这是我正在使用的示例数据框
level Income cumpop
1 17995.50 0.028405
2 20994.75 0.065550
3 29992.50 0.876185
4 41989.50 2.364170
5 53986.50 4.267305
6 65983.50 6.323390
7 77980.51 8.357625
8 89977.50 10.238910
9 101974.50 11.923545
10 113971.51 13.389680
11 125968.49 14.659165
12 137965.50 15.753850
13 149962.52 16.673735
14 161959.50 17.438485
15 173956.50 18.093985
16 185953.52 18.640235
17 197950.52 19.099085
18 209947.52 19.514235
19 221944.50 19.863835
20 233941.50 20.169735
21 251936.98 20.628585
22 275931.00 20.936670
23 383904.00 21.850000
这个特定国家的全部人口已按收入分类,并分为 23 个相应的“级别”。变量是该Income
级别所有成员的平均收入(这与说第 10 个百分位数的收入是 17995.50 很重要)。
但是每个级别的人口规模是不一致的(如果您查看cumpop
即累积人口的差异,您会注意到这一点)。最终,我想构建一个 10 行数据框,为变量 提供插值的十分位值Income
,例如,我们可以说“最贫穷的 10% 人口平均有 28,000 人”或“那些在 20% 到 30% 的人口中,平均收入为 41,000 英寸左右。因此,我想有效地将这 23 个级别减少为 10 个相同人口规模的级别(以 cumpop[23] 作为总人口),这需要一些插值。
我四处寻找一个可以进行这种经验累积分布函数生成/插值的库,它似乎ecdf
非常有用,但我不确定如何将其应用于上述Income
主题。cumpop
非常感谢这里的一些方向。