将较短的向量分配给矩阵中较长的列

时间:2014-02-11 11:09:22

标签: r matrix

我有一个矩阵:

a<-matrix(NA,ncol=10,nrow=10)

和矢量:

b<-sample(1:100,3)

我想用向量b填充矩阵的第一列。

列的长度为10,但向量的长度仅为3.

有没有办法用向量填充列并将剩余的插槽留空?

1 个答案:

答案 0 :(得分:0)

如果你的意思是填充,当向量b在元素用完时被回收,你可以使用以下内容:

a[,1] <- rep(b,ceiling(ncol(a)/length(b)))[1:nrow(a)]

如果您只想修改b长度给出的行条目数,请使用

a[1:length(b),1] <- b