python - 如何在字典中创建范围
问题描述
我有以下字典:
total_working_years_dict = dict(df.TotalWorkingYears.value_counts())
total_working_years_dict
{10: 202,
6: 125,
8: 103,
9: 96,
5: 88,
1: 81,
7: 81,
4: 63,
12: 48,
3: 42,
15: 40,
16: 37,
13: 36,
11: 36,
21: 34,
17: 33,
14: 31,
2: 31,
20: 30,
18: 27,
19: 22,
23: 22,
22: 21,
24: 18,
25: 14,
28: 14,
26: 14,
0: 11,
29: 10,
31: 9,
32: 9,
27: 7,
30: 7,
33: 7,
36: 6,
34: 5,
37: 4,
35: 3,
40: 2,
38: 1}
关键是工作年限,价值观是拥有这种经验的员工人数。我想转换我的字典,以便在 (0,6)、(6,11) 等范围内给出总工作年数。
你知道怎么做吗?
解决方案
让我们从您的 dict 作为一个系列开始:
s = pd.Series(total_working_years_dict)
你可以pandas.cut
用来组成你的小组:
s.index = pd.cut(s.index, bins=range(0,100,6))
输出:
(6.0, 12.0] 202
(0.0, 6.0] 125
(6.0, 12.0] 103
(6.0, 12.0] 96
(0.0, 6.0] 88
...
(30.0, 36.0] 3
(36.0, 42.0] 2
(36.0, 42.0] 1
dtype: int64
注意。如果您现在想汇总每个组的计数,那么pandas.cut
在您的初始value_counts
. 另外,如果您需要进一步处理,我不明白将 Series 转换为 dict 的意义。
推荐阅读
- angular - 如何在角度路由器中关闭自动斜线添加内部 URL
- android - 当尺寸变小时,矢量可绘制对象像素化
- dynamics-crm - 空白 createdon、createdby、modifiedon、modifiedby
- python - Pandas Dataframe 查找和子字符串
- c# - 无法将 URL 解码为正确的值
- python - 如何在文本中查找日期
- python - 找不到元素
- node.js - 将 nodemon 与 docker 和 docker-compose 一起使用
- javascript - 关于 JS 和列表分布的新手问题
- javascript - 条纹handleServerResponse()错误ReactJS