Melyek a hurkok az R-ben?
Az R hurkok használják a kód ismételt iterációinak programozásában. Minden modern programozáshoz meg kell ismételni egy utasításblokkot a kódban. Ehhez hurkok állításokat írnak elő n számú alkalommal a kódblokk végrehajtásához a számlálóval, vagy az inkrementációval / csökkentéssel minden iterációs ciklusnál. Például háromszor végre kell hajtania egy műveletet, nem kötelező az utasítások sorozatát írni, ami meghosszabbítja a kód hosszát. A jó forráskódnak nem szabad hosszúnak lennie. Egy hurok használatával ugyanazt a nyilatkozatot írhatja a hurokba, ez minimalizálja az időt, és hatékonyan biztosítja az optimalizálást.
Magyarázza el az R programozás hurkait?
R egy programozási nyelv, amelyet adattudósok, adatbányászok használnak statisztikai elemzéshez és jelentéstételhez. A hurkok fontos fogalom az R. mélyebb megértésének. Hasznos a Monte Carlo módszerek R hurokban történő végrehajtása. Különösen a hurkok számára hasznos, ha a szimulációs részről van szó - például a Markov-láncfolyamat, amely véletlenszerű változók halmazát használja. Az állapottér számos véges hurkot foglal magában az eredetnél. A gépi tanulási modellekben a memória megtakarítása a generátorok segítségével a fő előnye. Ezt úgy végezzük, hogy meghatározzuk egy olyan funkciót, amely hurkolja a meghatározott elemeket. Az adattudományban a kódmásolás hatással van a kódhibákra. Meg kell határozni és eltávolítani az ismétlődő értékeket az adatkészletből. A csökkentésükhöz használt eszköz az iteráció, amely több minta bevitelt hajt végre a különböző adatkészleteknél. Ezért három iterációs paradigmát kell használni: a hurkokhoz, ismételje meg, és míg a hurkokat.
1. Az R hurkokhoz
A hurok sokféle adatszerkezetnél működik, mint például tömbök, mátrix, lista, vektorok. Az For loop alapszintaxisa az R programozásban az alábbiakban található:
Szintaxis:
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
)
)
Áramlási diagram a hurokhoz
Az alábbi diagramban a sorozat minden egyes értékére a hurok végrehajtásra kerül. amikor nincs több érték, visszatér a kilépéshez.
Példa:
Itt van egy egyszerű példa a számok kinyomtatására.
for (n in 1:6)
(
print (5 * n)
)
Kimenet:
5
10
15
20
25
30
A páratlan értékek számának a felsorolásához
a <- c (2, 7, 3, 13, 8, 11, 6)
ct <- 0
for (val in a) (
if (! val %% 2 == 0)
ct = ct+1
)
print(ct)
Kimenet:
(1) 41. Hurokba beágyazva
Példa:
for (i in 1: 4)
(
for ( j in 1:3)
(
print (i*j)
)
)
Kimenet:
1 2 3 2 4 6 3 6 9 4 8 12
2. Hurok esetén a Lista segítségével
Példa:
Lista létrehozása három vektor segítségével
a <- list ("Sunday", "Monday", c (24, 63, 01), FALSE, 33.9, 12.6)
print (a)
Kimenet:
((1)) (1) „vasárnap”(2) (1) „hétfő”
((3)) (1) 24 36 1
((4)) (1) hamis
((5)) (1) 33.9
(6) (1) 12.6
3. A Vector használata
x<- 1:6
y<- 1:6
tw <- numeric (length = length(x))
for (i in seq_along(x)) (
tw(i) <- x(i) + y(i) )
tw
Kimenet:
2 4 6 8 10 12
A fenti program három összetevőből áll:
- Vektorhossz hozzárendelése (). A hatékonyság fenntartásához elegendő helyet kell elfoglalni. És a vektornak egyfajta adattípusa van.
- Másodszor, az a sorrend jön létre, amely meghatározza az egyes elemek indexeit.
- A harmadik a kijelentések szövege. Ez a hely, ahol a kód elvégzi a munkáját, minden alkalommal iteratíven fut, eltérő i értékkel.
2. Míg a hurkok R-ben vannak
A kódblokk addig fut, amíg a feltétel hamis (logikai feltétel), amely összehasonlító kifejezést ad.
Szintaxis:
While (test condition)
(
Body of the statement
)
Ábra folyamatábra a while hurokban
Az alábbiakban látható a while-hurok folyamatábrája R-ben.
Példa:
Nos, itt van egy példa a Some loop-ra. A szám négyzetének kiszámításához 3-ig.
i <- 1
while(i<=3)
(
print(i*i)
i=i+1
)
Kimenet:
1
4
9
A fenti példában egyértelmű, hogy az „i” -et kezdetben 1-nek deklarálják, és itt a feltétel (i <3), ellenőrzi a valódi állítást, mivel az 1-nél kevesebb, mint a 3. Az utasítás törzse végrehajtódik, és az I értéke megnövelt. A hurkot addig hajtják végre, amíg a feltétel hamis, és a míg a hurok kilép.
3. Ismételje meg a hurkokat R-ben
Ez a hurok elősegíti ugyanazon kód többszöri végrehajtását, amíg a stop feltétel nem teljesül (break). Az alábbi folyamatábra egyértelmű munkafolyamatot vagy ismételt nyilatkozatot ad. Az elején ismétlődő kulcsszót használ, amelyet a hurokba írt végrehajtható utasítások követnek, és ha az utasítások a kényszer feltételt ábrázolják. És végül, a hurok megszüntetésének egyetlen módja a break utasítások végrehajtása. Ez a hagyományos programozás rövid ideig tartó kulcsszójának alternatívája (annak tükrözése).
Szintaxis:
repeat
(
commands
if (condition expression) (
break))
Folyamatábra
Példa:
Lássunk egy példát az ismételt állítás megértésére
s <- 1
repeat
(
s <- s+3;
print (s);
if (s>10)
break;
)
Kimenet
4
7
10
13
Példa:
s <- 0
repeat (
s = s+1
print(s)
if (s == 4) (
print (" ends");
break
)
)
Kimenet:
1
2
3
4
"véget ér"
Következtetés
Most megértjük az R hurkok alapfogalmait és példáit. Összegezve: a hurkok használata R-ben csökkenti az idõt és a memóriamegtakarítást, és az egyéb vitatott ciklusoknál a hurkok R-ban kissé lassabbak. a hurkot és az R ismétlés használatát megfelelő feltételek mellett be kell fejezni. És amikor a műveletet meg kell ismételni, akkor a hurkot R-ben kell használni. A hurok összes kulcsfontosságú pontjának elolvasása után ügyeljen az R megvalósítására. A hurok teljesítményének javítása érdekében kerülje a hurok használatát az intenzív tárgyakon. A hurkok meglehetősen egyszerűek, de kerülni kell ezeket, és alkalmazni kell a gyorsabb vektorizálási koncepciót.
Ajánlott cikkek
Útmutató volt az R hurkokhoz. Itt megvitattuk az hurkok fogalmát, felhasználását az idő csökkentésére, típusára és példáira. Megtekintheti a következő cikkeket is, ha többet szeretne megtudni -
- Hurkok a C ++-ban példákkal
- Ruby parancsok
- XGBoost algoritmus
- Váltás a Matlabban
- Bevezetés a Míg a hurokba R
- Különböző típusú hurkok és azok előnyei
- Hurkok a VBScript-ben példákkal
- Különböző típusú hurkok a PowerShell-ben