我有一个熊猫数据框
import pandas as pd
df = pd.DataFrame({'c1': ['a', 'b', 'b'], 'c2': [1, 2, 2], 'c3': [[100], [200], [100]]})
df
那是
c1 c2 c3
0 a 1 [100]
1 b 2 [200]
2 b 2 [100]
现在,当我在c3
上进行分组后尝试连接列c1
时,我得到了想要的结果
In [40]: df.groupby('c1').agg({'c3': 'sum'})
Out[40]:
c3
c1
a [100]
b [200, 100]
但是,如果我尝试对c1
和c2
进行分组,那就是
df.groupby(['c1', 'c2']).agg({'c3': 'sum'})
我收到一个错误,说ValueError: Function does not reduce
。
为什么会这样?
答案 0 :(得分:1)
在大熊猫0.23.1
中,它运行良好,因此在较低版本的大熊猫中是个错误:
a = df.groupby(['c1', 'c2']).agg({'c3': 'sum'})
print(a)
c3
c1 c2
a 1 [100]
b 2 [200, 100]