从exccel切换到python进行数据处理,处理的主要还是excel的思路,希望实现类似excel中某个函数的功能,日常主要参考蓝鲸的《从excel到python》。
目前在做一些统计指标,excel中用了countifs、sumifs和averageifs的统计,于是探究了一下python中如何实现这样的功能。
蓝鲸大大的书里写实现countifs和sumifs的功能用到的是pandas中的loc函数,实战的时候发现pandas版本更新后已经不再适用了(官方文档还是要多看)
没有发现特别适用的代码,于是想了一个笨办法,先用query实现了类似where的功能,再用groupby函数实现了
per_df1=pd.DataFrame(data.query('条件1' and '条件2'))
per_recheck_pack_num_1=pd.DataFrame(per_df1.groupby([(per_df1['分组要素1']),per_df1['分组要素2']]).order_id.count().reset_index(name='字段重命名'))
虽然比较笨,不过想要的功能还是实现了
接下来希望实现类似excel中averageifs的功能
于是如法炮制了一下average,并不可行
仔细一看,python中求平均值用的不是average而是mean改成mean之后可以实现想要的功能