Увод у петљу
Услов фор Лооп се извршава како би се скуп омогућио да се понавља док се не постигне тражени услов. За петље су врло корисне у случају, ако је потребно увећати велики број елемената или целих бројева. За петљу се може користити преко оквира података, вектора или било којег објекта. У ситуацији када неко мора да извршава сличну функцију више пута, јер се петља користи да би се смањио напор и време. На пример, ако је потребно да одштампамо 100 случајних бројева од 1 до 1000, можемо користити услов фор-петље да то лако постигнемо без да 100 пута користимо изјаву за штампање. У овој теми ћемо сазнати о Фор Лооп-у у Р.
За синтезу петље
Синтакса фор петље у Р слична оној у питхону или било ком другом језику. Испод је синтакса фор за петљу у Р.
Синтакса:
for (val in sequence) (
Statement
)
У горњој синтакси, вектор је представљен секвенцом, а вал је вредност вектора током Фор петље.
Сада ћемо погледати поступак који је предузео за стање петље уз помоћ дијаграма тока. За сваку ставку у низу, петља се понавља све док се не постигне тражени увјет. Услов је проверен и када се постигне последња ставка преводилац постоји петља.
Структура се састоји од иницијализације приказане као „инит“, ромба који је оквир за одлуку и правоугаоне кутије која је тело петље. Док извршава скуп наредби под за стање петље, преводилац не покреће петљу док не буде условљено. Ако није доступан ниједан услов, следеће упутство ће се извршити након петље. За сваку ставку у низу услов је подударан. Док се услови не подударају, петља се изнова и изнова понавља. Једном када је задња ставка или увјет задовољен, преводилац постоји у петљи.
Како петља делује у Р?
Пре него што научимо како Фор Лооп делује у Р, погледајмо шта је петља или петља. Петља или итерација која је у основи инструкција за понављање потиче из дугог времена уназад. Једноставно речено, аутоматизира процес груписањем одређених потребних функција у хрпу дијелова. Већина модерног програмског језика има уграђену петљу која омогућава изградњу функције за аутоматизацију. Функције петље могу се поделити на два дела, петље које су контролисане и могу се извршити жељени број пута када падне за породицу петље. С друге стране, петље које се заснивају на скупу услова спадају у породицу петље.
У овом чланку ћемо истражити различите методе доступне у Р за потребе петље. Даље ћемо погледати различите примере петље користећи функције доступне у Р библиотеци. Док радите на Р језику За петље су потребни само услови петља, ретко ће бити потребе за другим условима петље, као што су време. Погледајмо како се фор петља користи за понављање нумеричких вриједности.
# 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
У горњем примеру, променљива „и“ преузима се петља и понавља се све док се услов не испуни. Штампање променљиве „и“ унутар петље даје нам вредности у распону од 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"
У горњем примеру исписујемо жељене елементе из примера. У првом примеру су позвани четири елемента у низу, па су сви елементи штампани када се изјава за штампање изврши. У другом примеру, низ је позван до трећег елемента, отуда су прва три елемента штампана.
С друге стране, постоји стање које се зове понављајућа петља, а које има функцију сличну оној у петљи. Међутим, поновљени увјет се користи за непрекидно понављање кода без провјере стања.
Корисник мора дефинирати стање унутар петље и за излазак из петље мора се употријебити изјава "бреак". Некоришћење изјаве „бреак“ резултираће бесконачном петљом.
# 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
У горњем примеру смо одредили услов н == 16 тако да преводилац заустави петљу када је н == 6 постигнут.
За примере петље
За увођење Фор петље у Р ћемо узети пример вађења елемената или предмета из вектора.
> 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))
+ )
Како се изјава за испис налази унутар петље, добивамо жељене резултате и сва имена држава се исписују. У следећем кораку користи се још једна наредба за штампање изван петље која се практично извршава након што се фор-петља заврши.
Сада да видимо логику која стоји иза сваке итерације током извођења кода.
- Током прве итерације, држава = Орегон, у вектору остају елементи. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током друге итерације, држава = Флорида, у вектору су преостала још четири елемента. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током треће итерације, држава = Тексас, у вектору су преостала још три елемента. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током четврте итерације, држава = Лова, у вектору су преостала још два елемента. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током пете итерације, држава = Небраска, у вектору остаје још један елемент. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током шесте итерације, држава = Утах, у вектору могу бити преостали елементи. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током седме итерације, будући да више нема елемената који би се додијелили варијабли стања, преводилац ће изаћи из петље.
У следећем примеру ћемо погледати функционалност петље у случају целих бројева.
> 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
У следећем кораку, петља се користи за понављање нумеричког вектора и приказ појединачних целих бројева.
> for (i in num) (
+ print(i)
+ )
Како се изјава за штампање налази унутар петље, добивамо жељене резултате и исписују се сви цели бројеви из броја вектора.
Сада да видимо логику која стоји иза сваке итерације током извођења кода.
- Током прве итерације "1" остају елементи у вектору. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током друге итерације, "2", у вектору су преостала још три елемента. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током треће итерације, „3“, у вектору су преостала још два елемента. Дакле, изјаву о испису извршава преводилац унутар петље.
- Током четврте итерације, „4“, остаје још један елемент у вектору. Дакле, изјаву о испису извршава компајлер унутар петље.
- Током пете итерације "5", у вектору могу остати елементи. Дакле, изјаву о испису извршава преводилац унутар петље.
- Током шесте итерације, јер нема више елемената који би се додијелили варијабли нум, преводилац ће изаћи из петље.
Закључак - За петљу у Р
У овом чланку смо видели како се стање петље може извршити помоћу Р, Р студио је коришћен за извођење горе наведених операција и резултати су приказани. Даље смо видели пример вађења елемената или предмета из вектора и процена за сваки корак је истражена у чланку.
Препоручени чланци
Ово је водич за Фор Лооп у Р. Овде смо расправљали о томе како петља делује у Р уз одговарајуће примере и Синтаксу. Можда ћете такође погледати следеће чланке да бисте сазнали више -
- За петљу у Питхон-у
- Ц # За петљу
- Петље у Јава програмирању
- Петље у Р
- За петљу у Ц