English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Циклы R

Иногда мы можем нуждаться в повторном выполнении одного и того же блока кода. В общем, команды выполняются по порядку: сначала выполняется первая команда в функции, затем вторая, и так далее.

Языки программирования предоставляют различные структуры управления, обеспечивающие более сложные маршруты выполнения.

Операторы цикла позволяют нам повторно выполнять одну строку или блок строк, следующий график illustrates операторы цикла в большинстве языков программирования:


Типы циклов, предоставляемые R языком:

  • Цикл repeat

  • Цикл while

  • Цикл for

Контрольные операторы цикла, предоставляемые R языком:

  • Команда break

  • Строка Next

Синтаксические операторы управления циклом изменяют порядок выполнения кода, позволяя вам реализовать переход к другому участку кода.

Тип цикла

repeat

Цикл repeat будет продолжать выполнять код до тех пор, пока условие не станет false, для выхода используется команда break.

next команда используется для пропуска текущего цикла и начала следующего цикла (аналог continue в других языках программирования).

repeat { 
    // соответствующий код 
    if(condition) {
       if(cnt > 5) {
    break
break

Пример в данном случае退出 цикл, когда переменная cnt равна 5, cnt является счетчиком:

}
v    ,  
 
   Пример
   cnt
   
   v    ,

i

}
}
}
}

while

Цикл while в R языке будет повторно выполнять целевую строку, пока данное условие true.

next команда используется для пропуска текущего цикла и начала следующего цикла (аналог continue в других языках программирования).

while(condition)
{
   statement(s);
break

Здесь statement(s) может быть одной строкой или блоком из нескольких строк.

Условие может быть любым выражением, при любом ненулевом значении оно будет true. Когда условие true, выполняется цикл. Когда условие false, цикл退出, и поток выполнения программы продолжит выполнять следующую за циклом команду.

Пример в данном случае выводит содержимое блока while, когда переменная cnt меньше 7, cnt является счетчиком:

}
v    ,  
 v    ,   
   Пример
   cnt

i

}
}
}
}
}

cnt cnt

for

next команда используется для пропуска текущего цикла и начала следующего цикла (аналог continue в других языках программирования).

Команда for в языке программирования R может повторно выполнять指定的 инструкции, количество повторений можно контролировать в команде for.
    for (value in vector) {
break

statements

Цикл for в языке R особенно гибок, он может не только циклить по целочисленным переменным, но и итерировать по векторам символов, логическим векторам, спискам и другим типам данных.

Пример  
  v 
   i    v

i

Выполните вышеуказанный код, результат ввода:
[1] "A"
[1] "B"
Следующий пример выводит первые четыре буквы из 26:

[1] "D"

if(cnt > 5) {

Управление циклами

Команда break в языке R вставляется в тело цикла и используется для выхода из текущего цикла или оператора, и начала выполнения следующей команды в скрипте.

Если вы используете вложенные циклы, команда break останавливает выполнение внутреннего цикла и начинает выполнение внешнего цикла.

next команда используется для пропуска текущего цикла и начала следующего цикла (аналог continue в других языках программирования).

if(cnt > 5) {

break также часто используется в операторах switch.

Следующий пример использует команду break для выхода из цикла при значении переменной cnt равном 5, cnt - это счетчик: v <- c("Google","w3codebox") cnt <- 2   repeat {   print(v)     cnt <- cnt+1      if(cnt > 5) {   break break

i

}
}
}
}

Формат语法:

[1] "Google" "w3codebox"

next команда используется для пропуска текущего цикла и начала следующего цикла (аналог continue в других языках программирования).

Формат语法:

next

Пример  
  v 
   
    i    v     
      
   
   i    v

i

Выполните вышеуказанный код, результат ввода:
[1] "A"
[1] "B"
[1] "C"
[1] "E"