根据向量重复数据框中的行

时间:2018-12-18 16:21:48

标签: r dataframe repeat

我有一个数据帧,并希望按预先定义的向量中的每个元素重复每一行。

例如,如果我有一个矩阵(例如,我使用矩阵)

     matrix(c(1,2,3,2,1,3),2)
         [,1] [,2] [,3]
  [1,]    1    3    1
  [2,]    2    2    3

我想返回

matrix(c(1,1,2,2,3,3,2,2,1,1,3,3),4)
      [,1] [,2] [,3]
[1,]    1    3    1
[2,]    1    3    1
[3,]    2    2    3
[4,]    2    2    3

如果向量是vec = c(2,2)。 我的向量具有变化的大小元素。抱歉,我是编码新手。

1 个答案:

答案 0 :(得分:3)

重复行号。在您的示例中:

base = matrix(c(1,2,3,2,1,3),2)
rows = 1:nrow(base)
index= rep(rows, c(2,2))
base[index,]