如果我有这个 Dataframe :
RoomCode Notes Qty sum cumsum
4302 AGA 2A2K 14323 30613 14323
4301 AGA 2A1K 4810 30613 19133
4303 AGA 2A4K 4180 30613 23313
4306 AGA 2A5K 3759 30613 27072
4307 AGA 2A7K 1472 30613 28544
4304 AGA 2A8K 783 30613 29327
4311 AGA 2A9K 571 30613 29898
4310 AGA 2A10K 243 30613 30141
4312 AGA 2A11K 139 30613 30280
基于累计和,我想做一个类,它是这样工作的。如果累计和覆盖了95%的总和,那么它是类1。所以,总和是30613。那么30613的95%是29082.35。所以,指数4302到4307是类1。接下来的2,5%是在29082.5到29847.675之间(范围为总和的95%至97.5%)因此,4304至4311为2类。下一个列表为3类。
2条答案
按热度按时间hgncfbus1#
让我们使用Pandas
cut
来基于bin对cumsum
列进行分类如果需要按代码分组,则按唯一代码组应用分类功能
结果
zxlwwiss2#
你可以通过这个尝试代码实现你的目标解决方案: