如何在同一只熊猫数据框的一列中执行两项聚合操作?

时间:2019-05-04 06:19:05

标签: python pandas aggregate

我在pandas数据框中有一列,我想在同一结果中找出一列的最小值和最大值。但是问题是我只能得到一个汇总值。

import pandas as pd
print(df)

col1 col2
5    9
6    6
3    4
4    3

df.agg({'col1':'sum','col1':'mean'})

此聚合的输出仅给出平均值:

col1    4.5
dtype: float64

但是,我需要的输出应该具有col1的总和和均值,而我只是得到均值。

1 个答案:

答案 0 :(得分:2)

尝试以下代码:

import pandas as pd
from io import StringIO
content= """col1 col2
            5    9
            6    6
            3    4
            4    3
            """
df=pd.read_csv(StringIO(content),sep='\s+')
df.agg({"col1":["sum","mean"],"col2":"std"})

如果要在一列中应用多个功能,则必须使用列表,否则col1的后一个功能将替换前一个。 如果要对不同的列应用多元函数,只需在agg功能内使用dict。