你能在R中打印一条线吗?

时间:2015-05-11 14:01:30

标签: r printing console

我正在写一些数据处理的东西,我希望有一个简洁的进度状态,打印一小部分,在控制台的一行上随时间更新。

为了完成这项工作,我希望有类似的东西

print(Initiating data processing...)
for(sample in 1:length(data)){
   print(paste(sample,length(data),sep="/"))
   process(data[[sample]])
   #Unprint the bottom line in the console ... !!! ... !!!.. ?
}

保持屏幕清洁,没有。我不太清楚怎么做。我知道有一个R text progress bar但是为了实用起见,我正在寻找更多的控制权。

谢谢!

1 个答案:

答案 0 :(得分:6)

我认为最好的办法是完全按照R文本进度条执行操作,即“\r返回左边距”,如帮助文件中所示。您必须使用cat而不是print,因为print以换行符结尾。

cat("Initiating data processing...\n")
for(sample in 1:length(data)){
   cat(sample, length(data), sep="/")
   process(data[[sample]])
   cat("\r")
}
cat("\n")