[英]Why using two variables in loop in R (code given below)?
我正在看R中的DIGRE模型代碼,有一個循環如下:
idx <- 1
for (i in 1:length(drugName)) {
if (drugName[i] != "Neg_control") {
cat(idx, ". ", drugName[i], "\n", sep = "")
idx <- idx + 1
}
我的問題是為循環和計數器使用單獨的變量(i和idx)的特殊原因。 僅使用一個變量,此循環就無法正常工作。 我是R的新手,因此很好奇。
僅當drugName
不是"Neg_control"
,變量idx
才會遞增。 所以i
索引了drugName
所有觀察值,而idx則對“出現次數”進行計數。 我猜取決於數據的外觀和函數的目標是什么,而無需使用循環即可完成。
這個怎么樣?
controlTF = drugName != "Neg_control"
idx <- sum(controlTF)
paste0(1:idx, ". ", drugName[controlTF])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.