如何在R语言嵌套循环中显示总迭代执行次数?
实现循环迭代次数统计的方法
要在循环结束后显示总迭代次数,只需通过一个计数器变量追踪迭代次数即可,具体修改如下:
修改后的完整代码
# 初始化迭代计数器 iter_count <- 0 for (mechanism in c("DBA", "EBA")){ for (sample.size in c(50, 150, 250, 350)) { # 每次迭代时计数器加1 iter_count <- iter_count + 1 d1 <- ml_data( n_pers=sample.size, n_time= 5, beta_int=0, beta_time=0.3, beta_covar=0.5, mean_r=0, var_r=1) # 筛选指定变量 mydata <- d1[,c(1,2,3,8)] # 生成缺失值 mydata <- produce_NA(mydata, mechanism, perc.missing = 0.2) X.mydata <- mydata$data.incomp # 输出新生成缺失值的占比 R.mydata <- mydata$idx_newNA writeLines(paste0("Percentage of newly generated missing values: ", 100*sum(R.mydata)/prod(dim(R.mydata)), " %")) } } # 循环结束后输出总迭代次数 writeLines(paste0("Number of iterations: ", iter_count))
关键修改说明
- 初始化计数器:在循环开始前定义
iter_count <- 0,用于记录总迭代次数; - 更新计数器:在内层循环的第一行加入
iter_count <- iter_count + 1,每执行一次迭代就将计数器加1; - 输出结果:外层循环全部执行完毕后,通过
writeLines输出最终的迭代次数,无论迭代次数是几次还是数百次,都能准确验证执行的总次数。
内容的提问来源于stack exchange,提问作者Johnn-1231
相关产品推荐
相关产品推荐

