4
分组熊猫DataFrame时,我应该何时使用transform
以及何时应该使用aggregate
? 它们在实际应用方面有什么区别,哪一个 认为更重要?熊猫变换与聚合
分组熊猫DataFrame时,我应该何时使用transform
以及何时应该使用aggregate
? 它们在实际应用方面有什么区别,哪一个 认为更重要?熊猫变换与聚合
考虑数据框df
df = pd.DataFrame(dict(A=list('aabb'), B=[1, 2, 3, 4], C=[0, 9, 0, 9]))
groupby
是标准的使用aggregater
df.groupby('A').mean()
也许您希望这些值在整个组中广播并返回与您开始使用的索引相同的索引。
使用transform
df.groupby('A').transform('mean')
df.set_index('A').groupby(level='A').transform('mean')
agg
用于您有特定的事情要运行不同的列或多个事情在同一列上运行。
df.groupby('A').agg(['mean', 'std'])
df.groupby('A').agg(dict(B='sum', C=['mean', 'prod']))
令人难以置信的巨大的答案! – mathopt