溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

R語言的循環(huán)類型有哪些

發(fā)布時間:2022-01-20 10:56:40 來源:億速云 閱讀:177 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹了R語言的循環(huán)類型有哪些的相關(guān)知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇R語言的循環(huán)類型有哪些文章都會有所收獲,下面我們一起來看看吧。

什么是循環(huán)

循環(huán),用來處理對多個同類輸入做相同事情(即迭代),如對不同列做相同操作、對不同數(shù)據(jù)集做相同操作。循環(huán)語句允許我們多次執(zhí)行一個語句或語句組。


R 語言提供的循環(huán)類型有:

  1. repeat 循環(huán)

  2. while 循環(huán)

  3. for 循環(huán)

R 語言提供的循環(huán)控制語句有:

  1. break 語句

  2. Next 語句

循環(huán)控制語句改變你代碼的執(zhí)行順序,通過它你可以實現(xiàn)代碼的跳轉(zhuǎn)。

循環(huán)類型

repeat

repeat 循環(huán)會一直執(zhí)行代碼,直到條件語句為 false 時才退出循環(huán),退出要使用到 break 語句。語法格式如下:

repeat { 
    // 相關(guān)代碼 
    if(condition){
       break
    }}

以下實例在變量 cnt 為 5 時退出循環(huán),cnt 為計數(shù)變量:

實例

repeat { 
v <- c("Google","Runoob")
cnt <- 2

repeat {
   print(v)
   cnt <- cnt+1

   if(cnt > 5) {
      break
   }
}

執(zhí)行以上代碼,輸入結(jié)果為:

[1] "Google" "Runoob"
[1] "Google" "Runoob"
[1] "Google" "Runoob"
[1] "Google" "Runoob"

while

只要給定的條件為 true,R 語言中的 while 循環(huán)語句會重復(fù)執(zhí)行一個目標語句。

語法格式如下:

while(condition)
{
   statement(s);
}

在這里,statement(s) 可以是一個單獨的語句,也可以是幾個語句組成的代碼塊。

condition 可以是任意的表達式,當為任意非零值時都為 true。當條件為 true 時執(zhí)行循環(huán)。當條件為 false 時,退出循環(huán),程序流將繼續(xù)執(zhí)行緊接著循環(huán)的下一條語句。

以下實例在在變量 cnt 小于 7 時輸出 while 語句塊中的內(nèi)容,cnt 為計數(shù)變量:

實例

v <- c("Google","Runoob")
cnt <- 2

while (cnt < 7) {
   print(v)
   cnt = cnt + 1
}

執(zhí)行以上代碼,輸入結(jié)果為:

[1] "Google" "Runoob"
[1] "Google" "Runoob"
[1] "Google" "Runoob"
[1] "Google" "Runoob"
[1] "Google" "Runoob"

for

R 編程語言中 for 循環(huán)語句可以重復(fù)執(zhí)行指定語句,重復(fù)次數(shù)可在 for 語句中控制。

語法格式如下:

for (value in vector) {
    statements
}

R 語言的 for 循環(huán)特別靈活,不僅可以循環(huán)整數(shù)變量,還可以對字符向量,邏輯向量,列表等數(shù)據(jù)類型進行迭代。

以下實例輸出 26 個字母對前面四個字母:

實例

v <- LETTERS[1:4]
for ( i in v) {
   print(i)
}

執(zhí)行以上代碼,輸入結(jié)果為:

[1] "A"
[1] "B"
[1] "C"
[1] "D"

循環(huán)控制

break

R 語言的 break 語句插入在循環(huán)體中,用于退出當前循環(huán)或語句,并開始腳本執(zhí)行緊接著的語句。

如果你使用循環(huán)嵌套,break 語句將停止最內(nèi)層循環(huán)的執(zhí)行,并開始執(zhí)行的外層的循環(huán)語句。

break 也常用于 switch 語句中。

語法格式如下:

break

以下實例在 變量 cnt 為 5 時使用 break 退出循環(huán),cnt 為計數(shù)變量:

v <- c("Google","Runoob") 
cnt <- 2 
repeat { 
    print(v) 
    cnt <- cnt+1 
    if(cnt > 5) { 
        break 
    } 
}

執(zhí)行以上代碼,輸入結(jié)果為:

[1] "Google" "Runoob"
[1] "Google" "Runoob"
[1] "Google" "Runoob"
[1] "Google" "Runoob"

next

next 語句用于跳過當前循環(huán),開始下一次循環(huán)(類似其他語言的 continue)。

語法格式如下:

next

以下實例輸出 26 個字母的前面 6 個字母,在字母為 D 的時候跳過當前的循環(huán),進行下一次循環(huán):

實例

v <- LETTERS[1:6]
for ( i in v) {

   if (i == "D") {  # D 不會輸出,跳過這次循環(huán),進入下一次
      next
   }
   print(i)
}

執(zhí)行以上代碼,輸入結(jié)果為:

[1] "A"
[1] "B"
[1] "C"
[1] "E"
[1] "F"

關(guān)于“R語言的循環(huán)類型有哪些”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“R語言的循環(huán)類型有哪些”知識都有一定的了解,大家如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI