我有一个像这样的矩阵:
m1 <- matrix(c(1,2,3,4,5,6,7,8,9), nrow = 3, byrow = TRUE)
我希望每列重复“m”次,但是转换成文件并水平连接结果。我的意思是,假设“m”是3,我想有这样的东西:
matrix(c(1,4,7,2,5,8,3,6,9,1,4,7,2,5,8,3,6,9,1,4,7,2,5,8,3,6,9),
nrow = 3, byrow = TRUE)
有没有矢量化的方法来做到这一点?
我尝试使用rep来复制列然后进行转置,但我以多行结束
答案 0 :(得分:2)
我们可以使用rep
matrix(rep(m1, each=nrow(m1)), nrow=3)
或者
`dim<-`(rep(m1, each=nrow(m1)), dim(m1)*c(1,3))
或者
t(replicate(nrow(m1), c(m1)))
m1 <- matrix(c(1,2,3,4,5,6,7,8,9), nrow = 3, byrow = TRUE)