《R語言實(shí)戰(zhàn)》學(xué)習(xí)筆記---Chapter5(6) 高級數(shù)據(jù)管理 控制流-重復(fù)和循環(huán)

循環(huán)結(jié)構(gòu)重復(fù)地執(zhí)行一個或一系列語句, 直到某個條件不為真為止。 R中的循環(huán)結(jié)構(gòu)包括forwhile結(jié)構(gòu)。

for 結(jié)構(gòu)

for 循環(huán)重復(fù)地執(zhí)行一個語句, 直到某個變量的值不再包含在序列seq中為止。 語法為:

for (var in seq) statement

試用一下:

> for (i in 1:3) print("Hello World")
[1] "Hello World"
[1] "Hello World"
[1] "Hello World"
> for i in 1:3  print("Hello World")
Error: unexpected symbol in "for i"
> for  (i in 1:3)  {print("Hello World")}
[1] "Hello World"
[1] "Hello World"
[1] "Hello World"
> for  (i in 1:3)  (print("Hello World"))    
[1] "Hello World"
[1] "Hello World"
[1] "Hello World"

通過試用,可以看到,print("Hello World")被執(zhí)行了3次。for后面的括號是不能缺少的,而語句外面加上大括號或者小括號都是可以正常運(yùn)行的。

while 結(jié)構(gòu)

while循環(huán)重復(fù)地執(zhí)行一個語句, 直到條件不為真為止。 語法為:

while (cond) statement

需要注意,語句中的條件語句要能夠變化,使while中的條件能夠?yàn)榧俨蝗粫萑霟o限循環(huán)。

> i <- 5
> while (i > 1) { 
+   print(i);
+   print("Hello World");
+   i <- i -1;
+   print(i)
+   
+ }
[1] 5
[1] "Hello World"
[1] 4
[1] 4
[1] "Hello World"
[1] 3
[1] 3
[1] "Hello World"
[1] 2
[1] 2
[1] "Hello World"
[1] 1

通過print語句打印出了i的值,可以看到i5開始,每循環(huán)一次,i減少1,直到i = 1不再符合要求。
R在處理大數(shù)據(jù)集時,性能不佳。只要可能, 最好聯(lián)用R中的內(nèi)建數(shù)值/字符處理函數(shù)和apply族函數(shù)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容