大熊猫的操作是否与groupby互补(相反)?

时间:2013-05-29 08:13:54

标签: python group-by dataframe pandas

我有一个包含许多列的表(数据框)。现在我想在其中一列中平均值。这意味着我需要将所有列分组,除了我需要平均的列。我当然可以写:

df.groupby(['col1', 'col2', 'col3', 'col4', 'col5'])['vals'].mean()

但是,如果我可以做类似的事情,那就太好了。

df.groupby(['col6'], something='reverse')['vals'].mean()

大熊猫有可能吗?

1 个答案:

答案 0 :(得分:3)

您正在搜索手头列表中的补充列。您可以使用df.columns。它代表一个Index对象,允许一些有趣的操作。

df.columns.drop(['col6'])返回Index,并删除作为参数传递的列列表。您可以将其转换为列表并将其用作groupby参数:

df.groupby(df.columns.drop(['col6']).tolist())['vals'].mean()