当矩阵大小未知时,R矩阵连接列

use*_*622 1 r concatenation matrix

如何连接一行中的所有值并创建一个向量?我已在下面提供了我的mat1,预期结果-vec1低于该值.

仅供参考:mat1可以包含任意数量的行和列.我提供了3*3矩阵,仅用于示例目的

mat1=matrix(c(1:9),nrow=3)
vec1=c(147,258,369)
Run Code Online (Sandbox Code Playgroud)

akr*_*run 6

您可以尝试其中一个apply系列函数并"粘贴"行并转换为"数字"

 as.numeric(tapply(mat1, row(mat1), paste, collapse=''))
 #[1] 147 258 369
Run Code Online (Sandbox Code Playgroud)

要么

 as.numeric(apply(mat1,1, paste,collapse=''))
 #[1] 147 258 369
Run Code Online (Sandbox Code Playgroud)

或将"黑客帝国"到"data.frame",使用do.callpaste的行

 as.numeric(do.call(paste, c(as.data.frame(mat1), list(sep=''))))
 #[1] 147 258 369
Run Code Online (Sandbox Code Playgroud)