小编usc*_*t01的帖子

将行分成10组,每组具有相同的总值

我有一个包含2列,ID和收入的数据.我想创建一个列,它将数据分成10组,每组占总收入的10%.分位数方法为我提供了10个具有相同ID数而不是收入的组.

idrev[ , decile := cut(Revenue,
                    breaks = quantile(Revenue, probs = seq(0, 1, by = 1/10)),
                    labels = 1:10, right = FALSE)]
Run Code Online (Sandbox Code Playgroud)

我得到以下类型的结果

    N   Revenue %Revenue
 100    $3,992  80%
 100    $518    10%
 100    $236    5%
 100    $126    3%
 100    $68 1%
 100    $35 1%
 100    $16 0%
 100    $6  0%
 100    $2  0%
 100    $1  0%
 1,000  $5,000  100%
Run Code Online (Sandbox Code Playgroud)

我正在寻找这个结果

    N   Revenue %Revenue
 798    500 10%
 104    500 10%
 47     500 10%
 25     500 10%
 14     500 10%
 7  500 …
Run Code Online (Sandbox Code Playgroud)

r data.table

4
推荐指数
1
解决办法
85
查看次数

标签 统计

data.table ×1

r ×1