我正在使用pandas的groupby功能,并希望将函数应用于组中项目的集合。
以下代码会导致出现TypeError: 'type' object is not iterable
:
df = df.groupby('col1')['col2'].agg({'size': len, 'set': set})
但是以下代码有效:
def to_set(x):
return set(x)
df = df.groupby('col1')['col2'].agg({'size': len, 'set': to_set})
在我看来,这两种表达方式很相似,为什么第一种行不通呢?
TypeError: 'type' object is not iterable
,这可能是因为如果您没有传递一个函数,它会期望一个函数列表。 - ayhan