logo

För slinga i R

För loop in R programmeringsspråk är användbart för att iterera över elementen i en lista, dataram, vektor, matris , eller något annat föremål. Det betyder att for-loopen kan användas för att exekvera en grupp av satser upprepade gånger beroende på antalet element i objektet. Det är en ingångskontrollerad loop, i denna loop testas testvillkoret först, sedan exekveras loopkroppen, loopkroppen skulle inte exekveras om testvillkoret är falskt.

För loop i R-syntax:

for (var in vector) { statement(s) }>

Här tar var på varje värde av vektorn under loopen. I varje iteration utvärderas påståendena.



Flödesschema för For-loop i R:

För loop i RGeeksforgeeks

För slinga i R

Itererar över ett intervall i R – För loop

R








# R Program to demonstrate> # the use of for loop> for>(i>in> 1: 4)> {> >print>(i ^ 2)> }>

>

>

Produktion:

[1] 1 [1] 4 [1] 9 [1] 16>

I exemplet ovan, itererade vi över intervallet 1 till 4 som var vår vektor. Nu kan det finnas flera varianter av denna general for loop. Istället för att använda en sekvens 1:5 kan vi också använda sammanlänkningsfunktionen.

Använder sammanlänkningsfunktionen i R – För loop

R




# R Program to demonstrate the use of> # for loop along with concatenate> for>(i>in> c>(-8, 9, 11, 45))> {> >print>(i)> }>

>

>

Produktion:

[1] -8 [1] 9 [1] 11 [1] 45>

Istället för att skriva vår vektor inuti slingan kan vi också definiera den i förväg.

Använd konkatenat utanför slingan R – För slinga

R




# R Program to demonstrate the use of> # for loop with vector> x <->c>(-8, 9, 11, 45)> for>(i>in> x)> {> >print>(i)> }>

>

>

Produktion:

[1] -8 [1] 9 [1] 11 [1] 45>

Kapslad For-loop i R

R programmeringsspråk tillåter användning av en loop i en annan loop. Vid loop-kapsling kan vi sätta vilken typ av loop som helst inuti vilken annan typ av loop som helst. Till exempel kan en for-loop vara inuti en while-loop eller vice versa. Följande avsnitt visar ett exempel för att illustrera konceptet:

c# ordbok

Exempel:

R




# R Program to demonstrate the use of> # nested for loop> for>(i>in> 1:3)> {> >for>(j>in> 1:i)> >{> >print>(i * j)> >}> }>

>

>

Produktion:

[1] 1 [1] 2 [1] 4 [1] 3 [1] 6 [1] 9>

Hoppa uttalanden i R

Vi använder en jump-sats i loopar för att avsluta loopen vid en viss iteration eller för att hoppa över en viss iteration i loopen. De två vanligaste jump-satserna i loopar är:

Paus uttalande:

En break-sats är en hoppsats som används för att avsluta loopen vid en viss iteration. Programmet fortsätter sedan med nästa sats utanför loopen (om någon).

Exempel:

R




# R Program to demonstrate the use of> # break in for loop> for>(i>in> c>(3, 6, 23, 19, 0, 21))> {> >if>(i == 0)> >{> >break> >}> >print>(i)> }> print>(>'Outside Loop'>)>

>

>

Produktion:

[1] 3 [1] 6 [1] 23 [1] 19 [1] Outside loop>

Här går slingan ut så snart noll påträffas.

Nästa uttalande

Den avbryter en viss iteration och hoppar till nästa iteration. Så när nästa påträffas kasseras den iterationen och tillståndet kontrolleras igen. Om sant, exekveras nästa iteration. Följaktligen används nästa sats för att hoppa över en viss iteration i loopen.

Exempel:

R




# R Program to demonstrate the use of> # next in for loop> for>(i>in> c>(3, 6, 23, 19, 0, 21))> {> >if>(i == 0)> >{> >next> >}> >print>(i)> }> print>(>'Outside Loop'>)>

>

>

Produktion:

[1] 3 [1] 6 [1] 23 [1] 19 [1] 21 [1] Outside loop>

Skapa flera plotter inom for-Loop i R

R




# create a matrix of data> mat <->matrix>(>rnorm>(100), ncol = 5)> # set up the plot layout> par>(mfrow =>c>(2, 3))> # loop over columns of the matrix> for>(i>in> 1:5) {> ># create a histogram for each column> >hist>(mat[, i], main =>paste>(>'Column'>, i), xlab =>'Values'>, col =>'lightblue'>)> }>

>

>

Produktion:

För loop i RGeeksforgeeks

För slinga i R

I det här exemplet är för loop itererar över matrisens kolumner tillsammans med , och för varje kolumn skapas ett histogram av värdena med hjälp av hist() fungera. De huvud argument av hist() funktionen används för att ställa in titeln på varje plot, och xlab argument används för att märka x-axeln. De kol argument används för att ställa in färgen på staplarna i histogrammet till ljusblått.

De handla om() funktion används för att ställa in tomtlayouten med mfrow = c(2, 3) , som anger att tomterna ska ordnas i 2 rader och 3 kolumner. Detta innebär att för loop kommer att skapa 5 plots, som var och en är ett histogram av en av kolumnerna i matrisen tillsammans med , arrangerade i ett 2×3 rutnät.

Här så snart noll påträffas, avbryts den iterationen och tillståndet kontrolleras igen. Eftersom 21 inte är lika med 0 skrivs det ut. Som vi kan dra slutsatsen från ovanstående två program är den grundläggande skillnaden mellan de två jump-satserna att break-satsen avslutar loopen och nästa sats hoppar över en viss iteration av loopen.