Loop: lle R: ssä How For Loop toimii R: ssä yhdessä esimerkkien ja syntaksin kanssa

Sisällysluettelo:

Anonim

Johdatus For Loop: iin

A For Loop -ehto suoritetaan, jotta sarja voi toistaa itsensä, kunnes vaadittu ehto saavutetaan. Silmukoille ovat erittäin hyödyllisiä siinä tapauksessa, että suuri joukko elementtejä tai kokonaislukuja on toistettava. Silmukkaa varten voidaan käyttää tietokehyksen, vektorin tai minkä tahansa objektin yli. Tilanteessa, jossa samanlainen toiminto on suoritettava toistuvasti, silmukkaa käytetään vähentämään vaivaa ja aikaa. Esimerkiksi, jos vaaditaan tulostamaan 100 satunnaislukua välillä 1 - 1000, voimme käyttää for-loop-ehtoa saavuttaaksesi tämän helposti ilman, että tarvitsemme tulostuslausetta 100 kertaa. Tässä aiheessa aiomme oppia For Loopista R.

Loop-syntaksille

For silmukkasyntaksi R: ssä on samanlainen kuin pythonin tai muun kielen. Alla on R-silmukan syntaksi.

Syntaksi:

for (val in sequence) (
Statement
)

Yllä olevassa syntaksissa vektoria edustaa sekvenssi ja val on vektorin arvo For Loop -jakson aikana.

Katsotaan nyt prosessia, jonka silmukkaolosuhteet toteuttavat vuokaavion avulla. Jokaiselle sekvenssin kohteelle silmukka toistuu, kunnes vaadittu ehto saavutetaan. Edellytys tarkistetaan ja kun viimeinen kohde saavutetaan, kääntäjä on silmukka.

Rakenne koostuu alustuksesta, joka esitetään nimellä “init”, rombista, joka on päätöksentekolaatikko, ja suorakulmaisesta laatikosta, joka on silmukan runko. Suorittaessaan komentokokonaisuutta silmukkaolosuhteissa, kääntäjä ei käynnistä silmukkaa, ennen kuin ehto on määritetty. Jos ehtoa ei ole käytettävissä, seuraava käsky suoritetaan silmukan jälkeen. Kullekin sekvenssin kohteelle ehto vastaa. Kunnes ehtoa ei ole sovittu, silmukka menee uudestaan ​​ja uudestaan. Kun viimeinen kohde tai ehto täyttyy, kääntäjä on silmukassa.

Kuinka silmukka toimii R: ssä?

Ennen kuin opit, kuinka For Loop toimii R: ssä, katsotaan mikä on silmukka tai silmukka. Silmukan tai iteraation, joka on periaatteessa käsky toistaa, alkuperä on päivätty pitkällä taaksepäin. Yksinkertaisesti sanottuna se automatisoi prosessia ryhmittelemällä tietyt vaadittavat toiminnot erä osia. Suurimmalla osalla nykyaikaista ohjelmointikieltä on sisäänrakennettu silmukkatoiminto, joka mahdollistaa automaation toimintojen rakentamisen. Silmukkatoiminnot voidaan jakaa kahteen osaan, silmukoita, joita ohjataan ja voidaan suorittaa haluttu määrä kertoja kuuluu silmukkaperheelle. Toisaalta silmukoihin, jotka perustuvat joukkoon olosuhteita, kuuluu silmukkaperhe.

Tässä artikkelissa tutkimme R: ssä käytettävissä olevia erilaisia ​​menetelmiä silmukointia varten. Tarkastelemme edelleen erilaisia ​​silmukkaesimerkkejä R-kirjastossa käytettävissä olevien toimintojen avulla. R-kielellä työskennellessä Jos silmukat ovat vain tarvitsemasi silmukkaolosuhteet, harvoin voi olla tarpeen tarvita muita silmukointiolosuhteita, kuten kun taas. Katsotaan kuinka For-silmukkaa käytetään iteraatioon yli numeeristen arvojen.

# 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

Yllä olevassa esimerkissä silmukka ottaa muuttujan “i” ja toistaa sitä, kunnes ehto täyttyy. Tulostamalla muuttuja “i” silmukan sisään antaa arvot välillä 9–99. Katsotaanpa nyt toinen esimerkki, jossa käytetään merkkejä.

# 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"

Yllä olevassa esimerkissä tulostamme esimerkistä halutut elementit. Ensimmäisessä esimerkissä neljä elementtiä kutsutaan peräkkäin, joten kaikki elementit on tulostettu, kun tulostuslausunto on suoritettu. Toisessa esimerkissä sekvenssiä on kutsuttu kolmanteen elementtiin saakka, joten kolme ensimmäistä elementtiä tulostetaan.

Toisaalta on olemassa tila, jota kutsutaan toistosilmukkaksi, jolla on samanlainen toiminnallisuus kuin silmukalla. Toistamisolosuhteita kuitenkin käytetään iteroimaan koodi jatkuvasti ilman tilan tarkistusta.

Käyttäjän on määritettävä tila silmukan sisällä, ja silmukasta poistumiseen on käytettävä ”break” -käskyä. ”Break” -lausekkeen käyttämättä jättäminen johtaa äärettömään silmukkaan.

# 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

Yllä olevassa esimerkissä olemme määritellyt ehdon n == 16 niin, että kääntäjä pysäyttää silmukan, kun n == 6 saavutetaan.

Silmukkaesimerkkejä

Silmukoiden käyttöönottamiseksi R: ssä voidaan ottaa esimerkki elementtien tai esineiden purkamisesta vektorista.

> 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---"

Vaihe 1

Vektorinimitystilat on määritelty, jotka koostuvat eri tiloista

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

Vaihe 2

Seuraavassa vaiheessa silmukkaa käytetään iteroimaan tilavektorin yli ja näyttämään tilojen yksilöllinen nimi.

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

Koska tulostuslausunto sisältyy silmukan sisään, saamme halutut tulokset ja kaikki tilojen nimet tulostetaan. Seuraavassa vaiheessa silmukan ulkopuolella käytetään toista tulostuslausetta, joka käytännössä suoritetaan heti, kun silmukan lisäys loppuu.

Katsotaan nyt logiikkaa jokaisen iteraation takana koodin suorittamisen aikana.

  1. Ensimmäisen iteraation aikana tilassa = Oregon vektorissa on jäljellä elementtejä. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  2. Toisen iteraation aikana, State = Florida, vektoriin on jäljellä vielä neljä elementtiä. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  3. Kolmannen iteraation aikana, State = Texas, vektoriin on jäljellä vielä kolme elementtiä. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  4. Neljännen iteraation aikana tila = Lowa, vektoriin on jäljellä vielä kaksi alkuainetta. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  5. Viidennen iteraation aikana, tila = Nebraska, vektoriin on jäljellä toinen elementti. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  6. Kuudennen iteraation aikana tila = Utah, vektorissa voi olla jäljellä elementtejä. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  7. Seitsemännen iteraation aikana, koska tilamuuttujalle ei ole enää määritettäviä elementtejä, kääntäjä poistuu silmukasta.

Katsotaan seuraavassa esimerkissä silmukkatoiminto kokonaislukujen tapauksessa.

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

Vaihe 1

Numerovektori nimeltä on määritelty, joka koostuu kokonaislukuista 1 - 5

> num <- c(1:5)

Vaihe 2

Seuraavassa vaiheessa silmukkaa käytetään iteroimaan numerovektorin yli ja näyttämään yksittäiset kokonaisluvut.

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

Koska tulostuslausunto sisältyy silmukan sisään, saamme halutut tulokset ja kaikki kokonaisluvut vektorinumerosta tulostetaan.

Katsotaan nyt logiikkaa jokaisen iteraation takana koodin suorittamisen aikana.

  1. Ensimmäisen iteraation aikana ”1” vektorissa on jäljellä elementtejä. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  2. Toisen iteraation aikana ”2” vektorissa on jäljellä vielä kolme elementtiä. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  3. Kolmannen iteraation aikana ”3” vektoriin on jäljellä vielä kaksi alkuainetta. Näin ollen kääntäjä suorittaa tulostuksen käskyn silmukan sisällä.
  4. Neljännen iteraation aikana ”4” vektorissa on vielä yksi elementti jäljellä. Näin ollen kääntäjä suorittaa tulostuslausunnon silmukan sisällä.
  5. Viidennen iteraation ”5” aikana vektorissa voi olla jäljellä elementtejä. Näin ollen kääntäjä suorittaa tulostuslausunnon silmukan sisällä.
  6. Kuudennen iteraation aikana, koska num-muuttujalle ei ole enää määritettäviä elementtejä, kääntäjä poistuu silmukasta.

Johtopäätös - Loop: lle R: ssä

Tässä artikkelissa olemme nähneet kuinka silmukkaolosuhteet voidaan suorittaa R: llä, R-studiota on käytetty suorittamaan yllä olevat toiminnot ja tulokset on näytetty. Olemme edelleen nähneet esimerkin elementtien tai esineiden erottamisesta vektorista ja arviointia jokaiselle vaiheelle on tutkittu artikkelissa.

Suositellut artikkelit

Tämä on opas For Loop -yritykselle R. Tässä keskustellaan siitä, kuinka loop toimii R: ssä sopivien esimerkkien ja syntaksin kanssa. Saatat myös katsoa seuraavia artikkeleita saadaksesi lisätietoja -

  1. Loopille Pythonissa
  2. C # Loop
  3. Silmukoita Java-ohjelmoinnissa
  4. Silmukoita R: ssä
  5. C: n silmukalle