假设我的数据框中有一个名为“labels”的列。数据帧的结构使得我希望前3行的标签为“A”,接下来的5行为“B”,接下来的8行为“C”,依此类推。
假设没有序列模式,顺序如下:
loop <- c(3, 5, 8, 2, 1, 3)
我想为数据框分配一些特定的标签,让我们称之为
labels <- c("A", "B", "C", "L", "G", "X")
以这种方式将行值分配给标签的最佳方法是什么?我想到了一个双循环的东西,但它很快就乱了。
答案 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(...)
。