迭代地将值添加到具有离散循环的数据帧中的行

时间:2017-05-12 16:03:16

标签: r

假设我的数据框中有一个名为“labels”的列。数据帧的结构使得我希望前3行的标签为“A”,接下来的5行为“B”,接下来的8行为“C”,依此类推。

假设没有序列模式,顺序如下:

loop <- c(3, 5, 8, 2, 1, 3)

我想为数据框分配一些特定的标签,让我们称之为

labels <- c("A", "B", "C", "L", "G", "X")

以这种方式将行值分配给标签的最佳方法是什么?我想到了一个双循环的东西,但它很快就乱了。

1 个答案:

答案 0 :(得分:1)

这有效:

loop <- c(3, 5, 8, 2, 1, 3)

labels <- c("A", "B", "C", "L", "G", "X")

data <- matrix(1:(sum(loop)), sum(loop),1)

names <- rep(labels, loop)

rownames(data) <- names

使用Lamia的评论:)

编辑:不一定需要unlist(...)