我有以下代码生成带分号的输出 -
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 ;"
答案 0 :(得分:1)
新行在R中编码为"\n"
,就像许多其他语言一样。只需使用";\n"
代替";"
。
答案 1 :(得分:1)
简单地:
s <- paste0("take ", 1:3, ";", collapse="\n")
cat(s, "\n")