【发布时间】:2021-06-26 21:04:18
【问题描述】:
我不确定我错过了什么,但我已经研究了一段时间,无法弄清楚如何在多个列上进行聚合。这有效:
df.groupby(['Exchange', 'Industry','Sector']).agg({'totalRevenue': ['mean', 'min', 'max']})
但我没有通过 for 循环循环,而是尝试:
df.groupby(['Exchange', 'Industry','Sector']).agg({['totalRevenue', 'capitalExpenditures']: ['mean', 'min', 'max']})
我得到:TypeError: unhashable type: 'list'
一个相关的问题是在我运行上面的命令之后我运行的:
grouped_multiple.columns = ['totalRevenue_mean', 'totalRevenue_min', 'totalRevenue_max']
为了命名我可以识别的新列名。如果我在多个列上运行聚合,我该怎么做?
【问题讨论】:
-
您可以提供
df.groupby(columns that need to be grouped).agg({'Balance': ['mean', 'sum'], 'ATM_drawings': ['mean', 'sum']})您是否希望将这两个值聚合在一起? -
嗨@JoeFerndz 没有不聚合在一起(我想我必须把它放在分组中)我只是说如果我想在具有相同分组的多个列上重复相同的聚合,我可以发送一口气?
-
我得到了这个链接。看看这是否有帮助。 stackoverflow.com/questions/51653170/…
标签: pandas