我试着按分位数对数值进行分组,并为分位数范围内的值的总和创建列。下面是一个简化的、可复制的示例:
raw_data = {'female': [0, 1, 0, 1, 0, 1, 0, 1],
'male': [1, 0, 1, 0, 1, 0, 1, 0],
'number': [25000, 34000, 48600, 22000, 50000, 21000, 29000, 36000]}
df = pd.DataFrame(raw_data, columns = ['female', 'male', 'number'])
df
female male number
0 0 1 25000
1 1 0 34000
2 0 1 48600
3 1 0 22000
4 0 1 50000
5 1 0 21000
6 0 1 29000
7 1 0 36000
实际上,我正努力实现这一点:
^{pr2}$但是在这个数据框中显示了两个新列。一个代表属于相应分位数带的男性和女性的总和。在
最初我认为这应该是一个groupby
,并附加.quantile([values])
,然后.agg({'male': 'sum', 'female':'sum'})
但这不管用。我想达到的目标能实现吗?在
要使用
pd.qcut
创建分组:然后}
^{pr2}$groupby
和{相关问题 更多 >
编程相关推荐