Mis on silmused R-s?

R-silmuseid kasutatakse koodide korduvate iteratsioonide programmeerimisel. Kõik kaasaegsed programmeerimisprogrammid vajavad koodis käskude ploki kordamist. Selleks on silmuste väljavõtted ette nähtud n-kordseks korraks, et täita koodiplokk loenduri või suurendamise / vähendamisega igas iteratsioonitsüklis. Näiteks peate operatsiooni tegema kolm korda. Pole kohustuslik kirjutada avalduste jada, mis suurendab koodi pikkust. Hea lähtekood ei tohiks olla pikk. Silmuse abil saate sama väite kirjutada ka silmuse sisse, see vähendab aega ja pakub tõhusat optimeerimist.

Selgitage R-programmeerimise ahelaid?

R on programmeerimiskeel, mida kasutavad andmeteadlased, andmekaevandajad statistilise analüüsi ja aruandluse jaoks. Silmused on oluline kontseptsioon R.-ist sügavama mõistmise saamiseks. Monte Carlo meetodite rakendamiseks R-silmustes on abi. Eriti silmuste jaoks on abi simulatsiooni osas - näiteks Markovi ahelprotsess, mis kasutab juhuslike muutujate komplekti. Olekuruum hõlmab lähtepunktis palju piiratud silmuseid. Masinõppe mudelites on peamine eelis mälu säästmiseks generaatorite abil. Selleks määratletakse funktsioon, mis silib üle tema määratletud elementide. Andmeteaduses mõjutab koodi dubleerimine koodivigu. Andmekogumist on vaja tuvastada duplikaatide väärtused ja need eemaldada. Nende vähendamiseks kasutatakse iteratsiooni, mis teostab erinevates andmekogumites mitu proovi sisestust. Seetõttu on vaja kasutada kolme iteratsiooni paradigmat: silmuste jaoks korrake ja silmuste ajal.

1. Silmuste jaoks R-s

Loop töötab paljude andmestruktuuride korral, nagu näiteks massiivid, maatriks, loend, vektorid. R-programmeerimise For silmuse põhisüntaks on toodud allpool-

Süntaks:

for ( i in 1:n)
(
Body of the statements
)
Nested For loops
for (i in 1: n)
(
for ( i in 1:n)
(
Body of the statements
)
)

Voo skeem ettevõttes For Loop

Allolevas diagrammis iga jada väärtuse kohta käivitatakse silmus. kui enam väärtust pole, naaseb ta väljumiseks.

Näide:

Siin on lihtne näide numbrite printimiseks.

for (n in 1:6)
(
print (5 * n)
)

Väljund:
5
10
15
20
25
30

Loendis sisalduvate paaritu väärtuste arvu lugemiseks

a <- c (2, 7, 3, 13, 8, 11, 6)
ct <- 0
for (val in a) (
if (! val %% 2 == 0)
ct = ct+1
)
print(ct)

Väljund:

(1) 4

1. Pesatud Loopi jaoks

Näide:

for (i in 1: 4)
(
for ( j in 1:3)
(
print (i*j)
)
)

Väljund:

1 2 3 2 4 6 3 6 9 4 8 12

2. Loopi jaoks, kasutades loendit

Näide:

Loendi koostamine kolme vektori abil

a <- list ("Sunday", "Monday", c (24, 63, 01), FALSE, 33.9, 12.6)
print (a)

Väljund:

((1)) (1) “pühapäev”
((2)) (1) “esmaspäev”
((3)) (1) 24 36 1
((4)) (1) Vale
((5)) (1) 33, 9
((6)) (1) 12, 6

3. Vektori kasutamine

x<- 1:6
y<- 1:6
tw <- numeric (length = length(x))
for (i in seq_along(x)) (
tw(i) <- x(i) + y(i) )
tw

Väljund:

2 4 6 8 10 12

Ülaltoodud programm koosneb kolmest komponendist:

  1. Vektori pikkuse määramine (). Tõhususe säilitamiseks on vaja eraldada piisavalt ruumi. Ja vektoril on teatud tüüpi andmetüübid.
  2. Teiseks tuleb jada iga elemendi indeksite määramiseks.
  3. Kolmas on väidete kogu. See on koht, kus kood täidab oma tööd, see töötab iga kord iteratiivselt erineva väärtusega i.

2. Kuigi silmus R sisse

Koodiplokki täidetakse seni, kuni tingimus on vale (loogiline tingimus), mis annab võrdluse avalduse.

Süntaks:

While (test condition)
(
Body of the statement
)

Voolusskeem Kuigi silmus

Allpool toodud diagrammil on R-režiimis ahelsilmuse vooskeem.

Näide:

Noh, siin on näide Kuigi silmusest. Arvu ruudu arvutamiseks kuni 3-ni.

i <- 1
while(i<=3)
(
print(i*i)
i=i+1
)

Väljund:

1
4
9

Ülaltoodud näites on selge, et i-d deklareeritakse algselt 1 ja tingimus on siin (i <3), kontrollib tegeliku väite olemasolu, kuna 1 on väiksem kui 3. Väljavõtte põhiosa on täidetud ja I väärtus on suurendatud. Silmust teostatakse seni, kuni tingimus on vale ja samal ajal kui silmus väljub.

3. Korda silmuseid R-s

See ahel aitab sama koodi korduvalt täita, kuni peatumistingimus on saavutatud (vaheaeg). Allpool vooskeem annab selge töövoo või korrake avaldust. Alguses kasutab see korduvat märksõna, millele järgnevad ahelasse kirjutatud käivitatavad avaldused ja kui avaldused kujutavad piirangu tingimust. Ja lõpuks, ainus viis silmuse lõpetamiseks on katkestusavalduste täitmine. See on alternatiiv traditsioonilise programmeerimise katkematule märksõnale (selle peegeldus).

Süntaks:

repeat
(
commands
if (condition expression) (
break))

Vooskeem

Näide:

Vaatame näidet korduslause mõistmiseks

s <- 1
repeat
(
s <- s+3;
print (s);
if (s>10)
break;
)

Väljund

4
7
10
13

Näide:

s <- 0
repeat (
s = s+1
print(s)
if (s == 4) (
print (" ends");
break
)
)

Väljund:

1
2
3
4
“Lõpeb”

Järeldus

Nüüd on mõistetud R-s olevate silmuste põhimõisteid ja näiteid. Kokkuvõtteks võib öelda, et silmuste kasutamine R-s vähendab aja ja mälu säästmist ning muude vaieldavate silmuste silmused on R-is pisut aeglasemad. Hea on, kui proovite sisestada vähe koodi silmus ja kordusväite kasutamine R-s tuleks õigetes tingimustes lõpetada. Ja kui operatsiooni korrata, on Loop kasutamine R-is eelistatav. Pärast kõigi R-ahela põhipunktide lugemist tuleb R-i rakendamisel olla ettevaatlik. Süsteemi toimivuse parandamiseks vältige ahela kasutamist intensiivsetel objektidel. Sest silmused on üsna lihtsad, kuid tuleks neid vältida ja kasutada vektoriseerimise kontseptsiooni, mis on parem kiiresti.

Soovitatavad artiklid

See on olnud R-tüüpi silmuste juhend. Siin oleme arutanud R.-i ahelate kontseptsiooni, kasutamist aja, tüübi ja näidete vähendamiseks. Lisateabe saamiseks võite vaadata ka järgmisi artikleid -

  1. Silmused näites C ++
  2. Rubiini käsud
  3. XGBoost algoritm
  4. Lülita avaldus Matlabis
  5. Sissejuhatus Ringi loopi
  6. Erinevat tüüpi silmused koos selle eelistega
  7. Silmused VBScriptis näidetega
  8. PowerShelli erinevat tüüpi ahelad

Kategooria: