在R中是否有一个“by row”操作来将向量中的每一行转换为字符串?
> d= cbind("Data", c("2", "73")) > d [,1] [,2] [1,] "Data" "2" [2,] "Data" "73"
字符串我想要的是像这样的字符串
[,1] [1,] "Data 2" [2,] "Data 73"
型有没有一种简单的方法来按行连接项目?
cig3rfwq1#
是的,有。它被称为“应用”;-)
apply(d,1,paste,collapse=" ") [1] "Data 2" "Data 73" # convert to matrix using as.matrix to get exactly your solution
字符串参见?apply和?paste
?apply
?paste
p8h8hvxi2#
一种不使用?apply的通用方法:
do.call(paste, as.data.frame(d)) [1] "Data 2" "Data 73"
字符串其中as.data.frame用于避免下标。编辑:do.call是一个以另一个函数作为第一个参数,以列表作为第二个参数的函数。它通常用于向函数发送参数列表(在我们的例子中,d到paste()的列)。我们将d作为data.frame(一种列表)发送,以使此技巧生效。
as.data.frame
do.call
d
paste()
cngwdvgl3#
快速浏览一下?paste之后,很明显,apply对于给定的示例来说是不需要的。
apply
> paste(d[,1],d[,2]) [1] "Data 2" "Data 73"
字符串
3条答案
按热度按时间cig3rfwq1#
是的,有。它被称为“应用”;-)
字符串
参见
?apply
和?paste
p8h8hvxi2#
一种不使用
?apply
的通用方法:字符串
其中
as.data.frame
用于避免下标。编辑:
do.call
是一个以另一个函数作为第一个参数,以列表作为第二个参数的函数。它通常用于向函数发送参数列表(在我们的例子中,d
到paste()
的列)。我们将d作为data.frame(一种列表)发送,以使此技巧生效。cngwdvgl3#
快速浏览一下
?paste
之后,很明显,apply
对于给定的示例来说是不需要的。字符串