Mens Loop i R med eksempel

Anonim

En sløyfe er en uttalelse som fortsetter å løpe til en tilstand er oppfylt. Syntaksen for en stund er følgende:

while (condition) {Exp}

Mens Loop Flow Chart

Merk : Husk å skrive en avsluttende betingelse på et eller annet tidspunkt, ellers vil sløyfen fortsette på ubestemt tid.

Eksempel 1:

La oss gå gjennom et veldig enkelt eksempel for å forstå konseptet mens loop. Du vil opprette en løkke og legge til 1 til den lagrede variabelen etter hvert løp. Du må lukke sløyfen, derfor ber vi eksplisitt til R å slutte å sløyfe når variabelen nådde 10.

Merk : Hvis du vil se gjeldende sløyfeverdi, må du pakke variabelen inne i funksjonsutskriften ().

#Create a variable with value 1begin <- 1#Create the loopwhile (begin <= 10){#See which we arecat('This is loop number',begin)#add 1 to the variable begin after each loopbegin <- begin+1print(begin)}

Produksjon:

## This is loop number 1[1] 2## This is loop number 2[1] 3## This is loop number 3[1] 4## This is loop number 4[1] 5## This is loop number 5[1] 6## This is loop number 6[1] 7## This is loop number 7[1] 8## This is loop number 8[1] 9## This is loop number 9[1] 10## This is loop number 10[1] 11

Eksempel 2:

Du kjøpte en aksje til en pris på 50 dollar. Hvis prisen går under 45, vil vi korte den. Ellers holder vi det i porteføljen vår. Prisen kan svinge mellom -10 og +10 rundt 50 etter hver løkke. Du kan skrive koden som følger:

set.seed(123)# Set variable stock and pricestock <- 50price <- 50# Loop variable counts the number of loopsloop <- 1# Set the while statementwhile (price > 45){# Create a random price between 40 and 60price <- stock + sample(-10:10, 1)# Count the number of looploop = loop +1# Print the number of loopprint(loop)}

Produksjon:

## [1] 2## [1] 3## [1] 4## [1] 5## [1] 6## [1] 7
cat('it took',loop,'loop before we short the price. The lowest price is',price)

Produksjon:

## it took 7 loop before we short the price.The lowest price is 40