gpt4 book ai didi

python - Pandas 中的多个 AggFun

转载 作者:太空宇宙 更新时间:2023-11-04 09:06:18 25 4
gpt4 key购买 nike

如果您考虑 Excel 中的数据透视表,您可以添加额外的列并将总和更改为均值再更改为最小值或最大值。是否可以在 Pandaspivot 中获取多个值?

这是一个工作示例(摘自 pandas 文档):

import pandas as pd
import numpy as np
df = pd.DataFrame({'A' : ['one', 'one', 'two', 'three'] * 6,
....: 'B' : ['A', 'B', 'C'] * 8,
....: 'C' : ['foo', 'foo', 'foo', 'bar', 'bar', 'bar'] * 4,
....: 'D' : np.random.randn(24),
....: 'E' : np.random.randn(24),
....: 'F' : np.random.randn(24)})

这是一个枢轴示例:

pd.pivot_table(df, values=['D', 'E'], rows=['B'], aggfunc=np.mean)

返回:

    D           E
B
A -0.083449 -0.242955
B 0.826492 -0.058596
C 0.124266 -0.197583

有什么方法可以将 np.sum 带到此处的 pivot 示例?

最佳答案

您可以将列表传递给 pivot_tableaggfunc 关键字参数:

>>> pd.pivot_table(df, values=['D', 'E'], rows=['B'], aggfunc=[np.mean, np.sum])
mean sum
D E D E
B
A -0.102403 0.854174 -0.819224 6.833389
B 0.426928 -0.177344 3.415428 -1.418754
C -0.159123 -0.071418 -1.272980 -0.571341

[3 rows x 4 columns]

(PS:您也可以使用方法版本,即 df.pivot_table(stuff)。)

关于python - Pandas 中的多个 AggFun,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20485139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com