【发布时间】:2021-03-06 07:43:50
【问题描述】:
我有时会做(嵌套)for 循环,这需要一段时间,所以我喜欢在索引中添加一条消息。通常,我会这样做:
for (i in 1:1000) {
cat(paste0(i, " "))
}
但我已经尝试过以下任何一种:
for (i in 1:1000) {
print(i)
}
for (i in 1:1000) {
cat(paste(i, " ")) # or "\n", doesn't matter
}
for (i in 1:1000) {
message(i)
}
但是,这显然会连续生成文本(在此示例中,消息会很快通过,但正如我所说,我经常使用嵌套的 for 循环,这需要相当长的时间)。但是,我想做一条动态消息,在我的控制台上有一个不断变化的数字(索引)。我想这样的事情是可能的,因为当你安装一个包(或使用gganimate)时,有那一行不断变为=标志,表示进度(这是下一级的东西,但应该有相同的想法后面)。
我不知道该怎么做。我的猜测是有一些与\n 相同的上下文,比如\s(我知道它不存在,但它只是给出一个想法),或者可能有第三个函数(或与@987654331 相关的东西@,我不完全理解)除了print()、cat() 和message()。
【问题讨论】:
-
可能重复:R - text progress bar in for loop。 progress package 可以提供帮助。
标签: r for-loop printing status