R 如何使用循环创建字符串向量?
我试图使用循环在R中创建字符串向量,但遇到了一些问题。我很感激任何人能提供的帮助 我正在使用的代码更为详细,但我尝试在这里编写一个可复制的示例,它捕获了所有关键位:R 如何使用循环创建字符串向量?,r,for-loop,character,cat,R,For Loop,Character,Cat,我试图使用循环在R中创建字符串向量,但遇到了一些问题。我很感激任何人能提供的帮助 我正在使用的代码更为详细,但我尝试在这里编写一个可复制的示例,它捕获了所有关键位: vector1<-c(1,2,3,4,5,6,7,8,9,10) vector2<-c(1,2,3,4,5,6,7,8,9,10) thing<-character(10) for(i in 1:10) { line1<-vector1[i] line2<-vector2[i] thin
vector1<-c(1,2,3,4,5,6,7,8,9,10)
vector2<-c(1,2,3,4,5,6,7,8,9,10)
thing<-character(10)
for(i in 1:10) {
line1<-vector1[i]
line2<-vector2[i]
thing[i]<-cat(line1,line2,sep="\n")
}
而事情[2]
是
1
1
2
2
等等。有人知道我怎么做吗
cat
打印到屏幕上,但它返回NULL
-要连接到新的字符向量,您需要使用paste
:
thing[i]<-paste(line1,line2,sep="\n")
thing[i]line1=“你好”
>line2=“世界”
>粘贴(第1行,第2行,sep=“\n”)
[1] “你好\n世界”
>ret-ret
无效的
但请注意,在您的情况下,整个for循环可以被更简洁、更高效的行所取代:
thing <- paste(vector1, vector2, sep="\n")
# [1] "1\n1" "2\n2" "3\n3" "4\n4" "5\n5" "6\n6" "7\n7" "8\n8"
# [9] "9\n9" "10\n10"
东西你能告诉我你为什么想要这样一个字符向量吗?你也可以演示foo谢谢!!像往常一样,我似乎把事情弄得比实际情况更复杂。。。。感谢您的快速回复。@user2007964:不客气。如果这个答案解决了你的问题,别忘了。
> line1 = "hello"
> line2 = "world"
> paste(line1,line2,sep="\n")
[1] "hello\nworld"
> ret <- cat(line1,line2,sep="\n")
hello
world
> ret
NULL
thing <- paste(vector1, vector2, sep="\n")
# [1] "1\n1" "2\n2" "3\n3" "4\n4" "5\n5" "6\n6" "7\n7" "8\n8"
# [9] "9\n9" "10\n10"