对于pandas agg
,有没有办法根据数据类型指定聚合函数?例如,对象类型的所有列都获得“第一”,所有 float 获得“平均值”,等等?以避免必须输入所有列及其各自的聚合函数。
示例数据:
import seaborn as sns
iris = sns.load_dataset('iris')
所需代码:
iris.agg({"object":"first", "float":"mean"})
最佳答案
我会这样做:
import seaborn as sns
iris = sns.load_dataset('iris')
agg_method = {'float64': 'mean', 'object': 'count'}
iris.agg({k: agg_method[str(v)] for k, v in iris.dtypes.items()})
返回:
sepal_length 5.843333
sepal_width 3.057333
petal_length 3.758000
petal_width 1.199333
species 150.000000
dtype: float64
关于python - Pandas agg 根据数据类型定义指标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70364384/