【发布时间】:2019-01-03 19:41:49
【问题描述】:
假设我有一个按比例列从小到大排序的数据框,如下所示:(实际数据框有数千行)
identifier total ratio
1 15 0.21
2 500 0.21
3 70 0.56
4 200 0.75
5 540 0.99
和一个截止值:
cutoff = .3
最后我想要两个 csv 文件,一个占总数的 30%,比率最低(type1.csv),一个占剩余的 70%(type2.csv)
到目前为止,我尝试只取前 30% 的行,并尝试乘以
total * ratio
并对该新列进行排序,最后都没有得到正确的列表...
我如何为总列的值分配权重,然后在比率列上削减?
【问题讨论】:
-
s=(df.total*df.ratio).cumsum()s=s/s.iloc[-1]那么你只需要切片