R-在冒号后开始新的一行?

时间:2013-12-11 08:03:45

标签: r

我有以下代码生成带分号的输出 -

b <- capture.output(
for(i in 1:3){
str_i <- paste("take",i,";")
cat(str_i)
}
)

,这将输出如下 -

> b
[1] "take 1 ;take 2 ;take 3 ;"

但我需要的输出如下 -

take 1;
take 2;
take 3;

通过使用cat,我能够删除级别号[1]和“”但仍需要用分号分隔该行。

> cat(b)
take 1 ;take 2 ;take 3 ;

我试过rbind看看我是否可以垂直制作,但不能删除级别编号/标识符。在我尝试了多个东西后,我不确定它是否可行。任何建议都将非常感激。

> rbind(str_1,str_2)
      [,1]      
str_1 "take 1 ;"
str_2 "take 2 ;"

2 个答案:

答案 0 :(得分:1)

新行在R中编码为"\n",就像许多其他语言一样。只需使用";\n"代替";"

答案 1 :(得分:1)

简单地:

s <- paste0("take ", 1:3, ";", collapse="\n")
cat(s, "\n")