将计数数据转换为单个数据

时间:2019-06-28 19:35:06

标签: r

我有一个数据集,其中包含每个特征组合的计数。下面提供了一个玩具示例。因此,例如,有三名18岁的女性赚了$ 65,000。

request_1

我希望根据计数重复每个观察n次。我已经使用for循环完成了此操作,但发现R的效率很低。

request_2

什么是更有效的方法?

1 个答案:

答案 0 :(得分:1)

library(dplyr)
library(tidyr)

AGE=c(18,19,18,19)
SEX=c("M","F","F","M")
INCOME=c(70000,60000,65000,75000)
COUNT =c(1,2,3,4)
df<-data.frame(AGE,SEX,INCOME,COUNT)

df %>% 
    uncount(COUNT)
#>     AGE SEX INCOME
#> 1    18   M  70000
#> 2    19   F  60000
#> 2.1  19   F  60000
#> 3    18   F  65000
#> 3.1  18   F  65000
#> 3.2  18   F  65000
#> 4    19   M  75000
#> 4.1  19   M  75000
#> 4.2  19   M  75000
#> 4.3  19   M  75000

reprex package(v0.2.1)于2019-06-28创建