pandas DataFrame - 计算每个唯一索引的列的平均值而不对每个索引标签进行硬编码?

时间:2017-02-10 04:20:23

标签: python pandas

到目前为止,真的很喜欢大熊猫,这是我无法解决的问题!

我在这里显示一些简化的数据帧,用于某些航班数据。运营商是像Am这样的运营商。空气。和大学空气。

public class Person {
    private Integer id;
    private String name;

    @JsonCreator
    public Person(@JsonProperty(value = "id") Integer id, @JsonProperty(value = "name") String name) {
        this.id = id != null ? id : Integer.valueOf(1); //setting default
        this.name = name;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

在我的数据框中,carrier是左侧垂直索引,乘客数量是列顶部的索引。

我已通过以下方式识别出每个唯一索引:

print (df)

Carrier | Num_Passengers
AA        40
AA        35
AA        64
UA        40
UA        25
UA        56

给了我

carriers = df.index.unique()

然后,我想计算每个独特索引(AA和UA)的平均Num_Passengers而不明确地这样说。一些伪代码因为我不确定我是怎么做的:

array(['AA','UA'], dtype=object)

我真的一直在努力争取这个,并在互联网上搜索。也许我的措辞是错误的但是那里的某个地方必须有答案!

1 个答案:

答案 0 :(得分:0)

您希望将您的指数分组,然后获得平均乘客数量。

df.groupby(level=0).mean()

             Num_Passengers
Carrier                
AA            46.333333
UA            40.333333