【发布时间】:2016-10-06 11:52:05
【问题描述】:
我有一个包含 6,000 多个观察值的数据集,每条记录的得分范围为 0-100。下面是一个示例:
+-----+-------+
| uID | score |
+-----+-------+
| 1 | 77 |
| 2 | 61 |
| 3 | 74 |
| 4 | 47 |
| 5 | 65 |
| 6 | 51 |
| 7 | 25 |
| 8 | 64 |
| 9 | 69 |
| 10 | 52 |
+-----+-------+
我想根据他们在分数列中相对于同龄人的排名顺序将它们分成相等的十分位数,截止值在每 10 个百分位,如下所示:
+-----+-------+-----------+----------+
| uID | score | position% | scoreBin |
+-----+-------+-----------+----------+
| 7 | 25 | 0.1 | 1 |
| 4 | 47 | 0.2 | 2 |
| 6 | 51 | 0.3 | 3 |
| 10 | 52 | 0.4 | 4 |
| 2 | 61 | 0.5 | 5 |
| 8 | 64 | 0.6 | 6 |
| 5 | 65 | 0.7 | 7 |
| 9 | 69 | 0.8 | 8 |
| 3 | 74 | 0.9 | 9 |
| 1 | 77 | 1 | 10 |
+-----+-------+-----------+----------+
到目前为止,我已经尝试过 cut、cut2、tapply 等。我认为我在正确的逻辑路径上,但我不知道如何将它们应用于我的情况。非常感谢任何帮助。
【问题讨论】:
标签: r percentile binning