以范围为条件的百分比

Take percentages conditional on a range

我有一个由单列组成的数据框,如下所示。我想获得这样的观察百分比:

我希望得到 5 个数字,它们加起来等于 100(或 1)。

tenure
2
3
1
4
0.5
3
7
8
9
3
1
2.5
6
4
4.5
5
library(sur)
sur::percent.table(cut(df$tenure, breaks = c(0,3,6,12,24, Inf)))
(0,3]    (3,6]   (6,12]  (12,24] (24,Inf] 
50.00    31.25    18.75     0.00     0.00 
proportions(table(cut(df$tenure, breaks = c(0,3,6,12,24, Inf)))

无需任何额外包即可工作。 (您可以使用 scales 包将结果格式化为百分比。)