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