获取R中for循环的大小/长度

时间:2014-11-07 20:10:55

标签: r for-loop progress-bar

我最近吃了一种在for循环中实现进度条的方法。 (参考参考) 实施可以是:

size = 200
pb <- winProgressBar(title="Progress Bar", label="0% done", min=0, max=100, initial=0)
for(i in 1:size){
  Sys.sleep(0.1)

  # Progress Bar
  info <- sprintf("%d%% done", round((i/size)*100))
  setWinProgressBar(pb, i/size*100, label=info)
}
close(pb)

为了避免在循环开始时使用大小,我怎么能有一个变量来检测循环迭代器的总长度。这样代码就是:

pb <- winProgressBar(title="Progress Bar", label="0% done", min=0, max=100, initial=0)
for(i in 1:200){
  Sys.sleep(0.1)

  # Progress Bar
  size = ... # What to do ?
  info <- sprintf("%d%% done", round((i/size)*100))
  setWinProgressBar(pb, i/size*100, label=info)
}
close(pb)

我知道它会在for循环中添加微积分,这样可以很容易地在几个循环中实现,而不必改变它们的结构。

谢谢!

罗曼

Create a progress bar in R (r-bloggers)

0 个答案:

没有答案