假設有回圈
x <- c(2,5,3,9,8,11,6)
count <- 0
for (val in x) {
if(val %% 2 == 0) count = count 1
}
并且有標志變數。如果flag=TRUE然后運行此回圈并且標志具有任何其他值然后忽略運行回圈,則如何做到這一點。繼續執行其余代碼。
uj5u.com熱心網友回復:
幾種選擇:
如果出現
!flag以下情況,請不要回圈:flag <- FALSE x <- c(2,5,3,9,8,11,6) count <- 0 if (flag) { for (val in x) { if(val %% 2 == 0) count = count 1 } } count # [1] 0break提前退出回圈:flag <- FALSE x <- c(2,5,3,9,8,11,6) count <- 0 for (val in x) { if (!flag) break if(val %% 2 == 0) count = count 1 } count # [1] 0while回圈,自增回圈,并打破 if!flag。我不打算對此進行編碼,因為它不會為 #1 增加任何好處,但會增加無約束(如果撰寫不當)while回圈可能引入的風險。避免回圈,直接這樣做:
flag <- FLASE sum(flag & x %% 2 == 0) # [1] 0 flag <- TRUE sum(flag & x %% 2 == 0) # [1] 3
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/334580.html
標籤:r
下一篇:自動命名圖表標題和軸
