gpt4 book ai didi

python - aggfunc 获取 pandas 数据透视表单元格中的任意值

转载 作者:行者123 更新时间:2023-12-01 07:42:45 26 4
gpt4 key购买 nike

我想使用pivot_table来显示每个单元格中列的任意值。例如,给定一个像这样的 DataFrame:

df = pd.DataFrame({'x': ['x1', 'x1', 'x2'],
'y': ['a', 'b', 'c']})

要计算每个 x 值的 y 值:

df.pivot_table(index='x', values='y', aggfunc=len)
y
x
x1 2
x2 1

因此,我想用 ['a', 'c']['b' 代替 [2, 1] ,'c']

我尝试了这些方法,但都产生错误( notebook ):

df.pivot_table(index='x', values='y', aggfunc=sample)
df.pivot_table(index='x', values='y', aggfunc=head)
df.pivot_table(index='x', values='y', aggfunc=lambda x: x[0])

https://stackoverflow.com/a/38982172/1840471 ,另一种方法是使用 groupbyagg,在这种情况下会产生所需的结果:

df.groupby(['x']).y.agg('head')

但是,我希望使用pivot_table,因为我的完整用例涉及获取行和列中的值。

最佳答案

如何使用first,如下所示:

df.pivot_table(index='x', values='y', aggfunc='first')

Out[67]:
y
x
x1 a
x2 c

关于python - aggfunc 获取 pandas 数据透视表单元格中的任意值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56612975/

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