[英]R, how to increment the a for loop limit within the loop itself?
我在 R 中工作,我试图在循环本身内更改 for 循环的限制,但我无法成功。
这是我的玩具和平代码:
setwd(".")
options(stringsAsFactors = FALSE)
cat("\014")
set.seed(11)
execution_limit <- 10
for(exe_i in 1:execution_limit)
{
cat("(exe_i = ", exe_i," / ", execution_limit, ")\n", sep="")
Sys.sleep(0.1)
if(exe_i == 7) {
execution_limit <- 15
}
}
打印输出:
(exe_i = 1 / 10)
(exe_i = 2 / 10)
(exe_i = 3 / 10)
(exe_i = 4 / 10)
(exe_i = 5 / 10)
(exe_i = 6 / 10)
(exe_i = 7 / 10)
(exe_i = 8 / 15)
(exe_i = 9 / 15)
(exe_i = 10 / 15)
循环在 10 次迭代后停止,但我想一直持续到第 15 次迭代。 我怎样才能做到这一点?
谢谢
你可以像这样使用while
循环(注意你必须自己增加exe_i
)
execution_limit <- 10
exe_i <- 1
while(exe_i <= execution_limit)
{
cat("(exe_i = ", exe_i," / ", execution_limit, ")\n", sep="")
Sys.sleep(0.1)
if(exe_i == 7) {
execution_limit <- 15
}
exe_i <- exe_i + 1
}
# (exe_i = 1 / 10)
# (exe_i = 2 / 10)
# (exe_i = 3 / 10)
# (exe_i = 4 / 10)
# (exe_i = 5 / 10)
# (exe_i = 6 / 10)
# (exe_i = 7 / 10)
# (exe_i = 8 / 15)
# (exe_i = 9 / 15)
# (exe_i = 10 / 15)
# (exe_i = 11 / 15)
# (exe_i = 12 / 15)
# (exe_i = 13 / 15)
# (exe_i = 14 / 15)
# (exe_i = 15 / 15)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.