【发布时间】:2022-07-26 22:13:44
【问题描述】:
我有一个df,如下:
appid month tag totalvalue
0 1234 02-'22 B 50.00
1 1234 02-'22 BA 10.00
2 1234 01-'22 B 100.00
3 2345 03-'22 BA 25.00
4 2345 03-'22 BCS 15.00
5 2345 03-'22 B 100.00
输出我想要的如下:
appid month tag totalvalue %tage
0 1234 02-'22 B 50.00 1.0
1 1234 02-'22 BA 10.00 0.2
2 1234 01-'22 B 100.00 1.0
3 2345 03-'22 BA 25.00 0.25
4 2345 03-'22 B 100.00 1.0
5 2345 04-'22 BB 100.00 inf
我想要基于appid 和month 的组变量。此外要检查是否有tag=B 可用,因为group 只需将其他tag 的totalvalue 与它分开即可。如果没有显示inf
我已尝试使用df.groupby(['appid', 'month'])['totalvalue'],但无法以tag=B 作为groupby 对象的分母来复制它们。
【问题讨论】:
-
您的输入与最后两行中月份/标签/总值的输出不同