import pandas as pd
import numpy as np
dict = {
'姓名': ['张三','李四','王五','赵六'],
'1月':['100','150','200','300'],
'2月':['150','250','300','400'],
'3月':['200','250','300','500'],
'4月':['150','300','200','400'],
'5月':['200','100','300','200'],
'6月':['200','100','300','200'],
'7月':['200','100','300','200'],
}
上面这个如何进行分组计算达到下面这个表格的效果
姓名 | 销售额大于200的月份数量 | 销售额大于300的月份数量 |
---|---|---|
张三 | - | - |
李四 | - | - |
王五 | - | - |
赵六 | - | - |
可这样操作:
import pandas as pd
import numpy as np
dict = {
'姓名': ['张三','李四','王五','赵六'],
'1月':['100','150','200','300'],
'2月':['150','250','300','400'],
'3月':['200','250','300','500'],
'4月':['150','300','200','400'],
'5月':['200','100','300','200'],
'6月':['200','100','300','200'],
'7月':['200','100','300','200'],
}
df=pd.DataFrame(dict).set_index('姓名')
df=df.astype(int)
#print(df)
df['销售额大于200的月份数量']=df[df>200].count(axis=1)
df['销售额大于300的月份数量']=df[df>300].count(axis=1)
df=df.iloc[:,[-2,-1]]
print(df)
运行结果:
F:\2022\pythontest>t7
销售额大于200的月份数量 销售额大于300的月份数量
姓名
张三 0 0
李四 3 0
王五 5 0
赵六 4 3
如有帮助,请点采纳。
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!