1

我有一个包含 2 列的数据框

>mydata <- data.frame(Obj = c(1,2,3,2), Count = c(2,3,1,4))
>mydata
  Obj Count
1   1     2
2   2     3
3   3     1
4   2     4

我想根据计数拆分 Obj 列以获得原子对象,例如 (1, 1, 2, 2, 2, 3, 2, 2, 2, 2) 是的,这与函数相反。在 R 中有什么功能可以做到这一点吗?

PS:一个简单的 for 循环就可以解决问题,但我觉得使用内置的高效函数总是好的。

4

2 回答 2

2

你在寻找repCount与时俱进的论据

with(mydata, rep(Obj, Count))

rep.int,这是一个稍快的实现rep(x, times)

with(mydata, rep.int(Obj,  Count))
于 2013-02-20T02:58:51.720 回答
2

尝试

rep(mydata$Obj,mydata$Count)
于 2013-02-20T03:01:56.100 回答