如何在R语言循环的print()输出之间添加空行?
解决R循环打印时添加空行的问题
你可以通过两种方式实现期望的输出效果:
方法1:保留print()的索引格式,仅在元素间添加空行
如果想要保留print()自带的[1]索引格式,只需要在打印元素后,判断当前是否为最后一个元素,若非最后一个则输出纯换行符(用cat("\n"),不会产生多余的索引输出):
test <- c("A","B","C") for (i in 1:length(test)){ print(test[i]) # 仅在非最后一个元素后添加空行 if (i != length(test)) { cat("\n") } }
输出结果:
[1] "A" [1] "B" [1] "C"
方法2:用cat()直接输出纯文本(无索引)
如果不需要print()的索引格式,直接使用cat()输出元素并追加两个换行符,就能实现元素间的空行分隔:
test <- c("A","B","C") for (i in 1:length(test)){ cat(test[i], "\n\n") }
输出结果:
A B C
为什么原方法会出现多余输出?
你之前用print("")时,R会把空字符串当作一个普通对象打印,因此会输出[1] "";而cat("\n")是直接向控制台输出换行符,只会显示为空行,不会产生额外的索引内容。
内容的提问来源于stack exchange,提问作者Beeflight31
相关产品推荐
相关产品推荐

