メソッドは dict を受け入れることができます。agg
この場合、キーは関数が適用される列を示します。
grouped.agg({'numberA':'sum', 'numberB':'min'})
例えば、
import numpy as np
import pandas as pd
df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar',
'foo', 'bar', 'foo', 'foo'],
'B': ['one', 'one', 'two', 'three',
'two', 'two', 'one', 'three'],
'number A': np.arange(8),
'number B': np.arange(8) * 2})
grouped = df.groupby('A')
print(grouped.agg({
'number A': 'sum',
'number B': 'min'}))
収量
number B number A
A
bar 2 9
foo 0 19
これは、Pandas が列名のスペースを処理できることも示しています。問題の原因はわかりませんが、文字どおりのスペースが問題になることはありませんでした。これをさらに調査したい場合は、
print(df.columns)
列名を再割り当てせずに、名前の表示を表示repr
します。u'\xa0'
たとえば、列名にスペース (または他の文字) のように見えて実際には(NO-BREAK SPACE) である見にくい文字が含まれていた可能性があります。