根据另一列的总和将数据框分类为十分位数的方法

时间:2019-05-21 13:54:56

标签: python pandas binning

我使用大熊猫,尝试使用排名分数(x)将数据框分类为十分位数,以使每个十分位数都包含基于不同列(y)的总和相等的值。

换句话说,它将填充每个十分位数,直到达到某个值(y // 10的总和),然后转到下一个十分位数。

我尝试使用cut和qcut,但是它仅被x分割,而不被y中的值分割。

1 个答案:

答案 0 :(得分:2)

您可以使用cumsum + groupby

d={x: y for x , y df.groupby(df.y.cumsum()//10)}
d[0]