За контур в R - Как за Loop работи в R, заедно с примери и синтаксис

Съдържание:

Anonim

Въведение в For Loop

A условието за цикъл се изпълнява, за да може даден набор да се повтаря, докато се достигне необходимото условие. За цикъл са много полезни в случай, че трябва да се повтори голям набор от елементи или цели числа. За цикъл може да се използва над рамка от данни, вектор или всеки обект. В ситуация, когато човек трябва да изпълнява подобна функция многократно, за цикъл се използва за намаляване на усилията и времето. Например, ако се изисква да отпечатаме 100 произволни числа от 1 до 1000, можем да използваме условието за цикъл, за да постигнем лесно това, без да се налага използването на оператора за печат 100 пъти. В тази тема ще научим за For Loop в R.

За синтаксиса на цикъла

Синтаксисът за loop в R, подобен на този на python или друг език. По-долу е синтаксисът на за цикъл в R.

Синтаксис:

for (val in sequence) (
Statement
)

В горния синтаксис векторът е представен от последователност, а val е стойността на вектора по време на For Loop.

Сега нека да видим процеса, предприет от за състояние на цикъл с помощта на диаграма. За всеки елемент от поредицата цикълът се повтаря, докато се достигне необходимото условие. Условието се проверява и когато последният елемент е достигнат, компилаторът съществува.

Структурата се състои от инициализация, показана като „init“, ромбът, който е поле за решение, и правоъгълна кутия, която е тялото на цикъла. Докато изпълнява набор от команди под условие за цикъл, компилаторът не стартира цикъла, докато не бъде зададено условието. Ако няма налично условие, следващата инструкция след цикъла ще бъде изпълнена. За всеки елемент от поредицата условието е съвпадащо. Докато състоянието не съвпада, цикълът преминава отново и отново. След като последният елемент или условието е изпълнено, компилаторът съществува в цикъла.

Как за Loop работи в R?

Преди да научим как For Loop работи в R, нека да видим какво е цикъл или циклично. Цикълът или итерацията, която в основата си е инструкция за повторение, е с произход отдавна назад. Най-просто казано, това е автоматизиране на процеса чрез групиране на определени необходими функции в партида части. По-голямата част от съвременния език за програмиране има вградена функция за циклиране, която позволява изграждането на функция за автоматизация. Функциите за циклиране могат да бъдат разделени на две части, цикли, които се контролират и могат да бъдат изпълнени желания брой пъти, попадащи под семейството на цикъла. От друга страна, примките, които се базират на набор от условия, попадат под, докато семейството на цикъла.

В тази статия ще изследваме различните методи, налични в R за целите на цикъла. По-нататък ще разгледаме различни примери за цикли, използвайки функции, налични в библиотеката R. Докато работите на R език За циклите са само циклични условия, които ще ви трябват, рядко може да има нужда от други условия на цикли, като while. Нека да видим как For цикълът се използва за итерация над числови стойности.

# for printing number from 9 to 99 usinf for loop
> for(i in 9:99)(
+ print(i)
+ )
(1) 9
(1) 10
(1) 11
(1) 12
(1) 13
(1) 14
(1) 15
(1) 16
(1) 17
(1) 18
(1) 19
(1) 20
(1) 21

В горния пример променливата "i" се взема от цикъла и се повтаря, докато условието се изпълни. Отпечатването на променливата „i“ вътре в цикъла ни дава стойности, вариращи от 9 до 99. Сега, нека да видим друг пример, използващ символи.

# for printing and looping items in example vector
> example <- c("cat", "dog", "bill", "base")
> for(i in 1:4)
+ (
+
+ print(example(i))
+ )
(1) "cat"
(1) "dog"
(1) "bill"
(1) "base"
# In case we don't want the entire loop to be executed
# loop can be stopped with the help of break condition
# In the below example the fourth element will not be printed.
> example <- c("cat", "dog", "bill", "base")
> for(i in 1:3)
+ (
+
+ print(example(i))
+ )
(1) "cat"
(1) "dog"
(1) "bill"

В горния пример ние отпечатваме желаните елементи от примера. В първия пример са извикани четири елемента в последователността, следователно всички елементи са отпечатани, когато операцията за печат е била изпълнена. Във втория пример последователността е извикана до третия елемент, поради което се отпечатват първите три елемента.

От друга страна, съществува условие, наречено повторен цикъл, което има подобна функционалност като тази на цикъла. Въпреки това, условието за повторение се използва за итерация на код непрекъснато без проверка на състоянието.

Потребителят трябва да дефинира условие вътре в цикъла и за излизане от цикъла трябва да се използва „прекъсване“. Ако не използвате израза "break", това ще доведе до безкраен цикъл.

# illustrating repeat statement to print numbers from 5 to 15
> n <- 5
> repeat
+ (
+ print(n)
+ n = n+1
+ if (n == 16)(
+ break
+ )
+ )
(1) 5
(1) 6
(1) 7
(1) 8
(1) 9
(1) 10
(1) 11
(1) 12
(1) 13
(1) 14
(1) 15

В горния пример сме посочили условието n == 16, така че компилаторът спира цикъла, когато е достигнато n == 6.

За примери за цикли

За да се въведе For цикъл в R, нека вземе пример за извличане на елементи или елементи от вектора.

> states <- c('Oregon', 'Florida', 'Texas', 'Lowa', 'Nebraska', 'utah')
>
>
> for (str in states) (
+ print(paste("States in USA: ", str))
+ )
(1) "States in USA: Oregon"
(1) "States in USA: Florida"
(1) "States in USA: Texas"
(1) "States in USA: Lowa"
(1) "States in USA: Nebraska"
(1) "States in USA: utah"
# to illustrate the print operation outside the loop
> print("----prints outside the loop---")
(1) "----prints outside the loop---"

Етап 1

Определен е вектор с име на състояния, който се състои от различни състояния

> states <- c('Oregon', 'Florida', 'Texas', 'Lowa', 'Nebraska', 'Utah')

Стъпка 2

В следващата стъпка за цикъл се използва за итерация над вектора на състоянията и показване на индивидуалното име на състоянията.

> for (str in states) (
+ print(paste("States in USA: ", str))
+ )

Тъй като декларацията за печат е включена в цикъла, ние получаваме желаните резултати и всички имена на състоянията се отпечатват. В следващата стъпка се използва друг оператор за печат извън цикъла, който практически се изпълнява след приключване на for-loop.

Сега нека видим логиката зад всяка итерация по време на изпълнението на кода.

  1. По време на първата итерация, State = Орегон, има елементи, останали във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  2. По време на втората итерация, щат = Флорида, има още четири елемента, останали във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  3. По време на третата итерация, щат = Тексас, има още три елемента, останали във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  4. По време на четвъртата итерация, State = Lowa, има още два елемента, останали във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  5. По време на петата итерация, State = Nebraska, има още един елемент, останал във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  6. По време на шеста итерация, State = Юта, може да има елементи, останали във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  7. По време на седмата итерация, тъй като няма повече елементи за задаване на променлива на състоянието, компилаторът ще излезе от цикъла.

В следващия пример, нека да видим функционалността на цикъла в случай на цели числа.

> num <- c(1:5)
>
> for (i in num) (
+ print(i)
+ )
(1) 1
(1) 2
(1) 3
(1) 4
(1) 5

Етап 1

Определен е вектор с име номер, който се състои от цели числа от 1 до 5

> num <- c(1:5)

Стъпка 2

В следващата стъпка, за цикъл се използва за итерация над num вектор и показване на отделните цели числа.

> for (i in num) (
+ print(i)
+ )

Тъй като декларацията за печат е включена в цикъла, получаваме желаните резултати и всички числа от векторното число се отпечатват.

Сега нека видим логиката зад всяка итерация по време на изпълнението на кода.

  1. По време на първата итерация "1" има елементи, останали във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  2. По време на втората итерация “2” има още три елемента във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  3. По време на третата итерация „3“ има още два елемента във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  4. По време на четвъртата итерация “4” в вектора остава още един елемент. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  5. По време на петата итерация "5" може да има елементи, останали във вектора. Следователно операцията за печат се изпълнява от компилатора вътре в цикъла.
  6. По време на шестата итерация, тъй като няма повече елементи за задаване на променливата num, компилаторът ще излезе от цикъла.

Заключение - За контур в R

В тази статия видяхме как може да се изпълни състоянието на контура с помощта на R, R studio е използвано за извършване на горните операции и резултатите са показани. По-нататък видяхме пример за извличане на елементи или елементи от вектора и оценката за всяка стъпка е изследвана в статията.

Препоръчителни статии

Това е ръководство за For Loop в R. Тук обсъждаме как цикълът работи в R със съответните примери и синтаксис. Може да разгледате и следните статии, за да научите повече -

  1. За контур в Python
  2. C # За контур
  3. Цикли в програмирането на Java
  4. Цикли в R
  5. За контур в C