使用数据透视表时应用不同的聚合函数

为什么

我有这个样本:

import pandas as pd
import numpy as np
dic = {'name':
       ['j','c','q','j','c','q','j','c','q'],
       'foo or bar':['foo','bar','bar','bar','foo','foo','bar','foo','foo'], 
       'amount':[10,20,30, 20,30,40, 200,300,400]}
x = pd.DataFrame(dic)
x
pd.pivot_table(x, 
               values='amount', 
               index='name', 
               columns='foo or bar', 
               aggfunc=[np.mean, np.sum])

它返回以下内容:

在此处输入图片说明

我只想显示突出显示的列。为什么我不能像这样在aggfunc参数中指定元组?

pd.pivot_table(x, 
               values='amount', 
               index='name', 
               columns='foo or bar', 
               aggfunc=[(np.mean, 'bar'), (np.sum, 'foo')])

唯一的选择.ix像这里使用为pandas数据透视表中的每个值列定义aggfunc)吗?

最大容量

我认为您不能为aggfunc参数指定元组,但是您可以执行以下操作:

In [259]: p = pd.pivot_table(x,
   .....:                values='amount',
   .....:                index='name',
   .....:                columns='foo or bar',
   .....:                aggfunc=[np.mean, np.sum])

In [260]: p
Out[260]:
           mean       sum
foo or bar  bar  foo  bar  foo
name
c            20  165   20  330
j           110   10  220   10
q            30  220   30  440

In [261]: p.columns = ['{0[0]}_{0[1]}'.format(col) if col[1] else col[0] for col in p.columns.tolist()]

In [262]: p.columns
Out[262]: Index(['mean_bar', 'mean_foo', 'sum_bar', 'sum_foo'], dtype='object')

In [264]: p[['mean_bar','sum_foo']]
Out[264]:
      mean_bar  sum_foo
name
c           20      330
j          110       10
q           30      440

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用数据透视表时应用不同的聚合函数

来自分类Dev

在Pandas数据透视表的列上应用聚合函数

来自分类Dev

使用数据透视表时,同时为aggfunc应用两个numpy函数

来自分类Dev

如何将聚合函数应用于Pandas中数据透视表的所有列

来自分类Dev

如何在Pandas的数据透视表上应用带有条件的聚合函数?

来自分类常见问题

如何在laravel 8中使用不同的数据透视表播种多对多关系?

来自分类Dev

如何在laravel 8中使用不同的数据透视表播种多对多关系?

来自分类Dev

使用SQL Server 2008 R2在数据透视表查询中的聚合函数

来自分类Dev

如何直接在数据透视表上使用计数聚合函数?

来自分类Dev

在postgres中使用不同的日期和聚合函数

来自分类Dev

在基于数据值使用json2html转换数据时,如何应用不同的样式?

来自分类Dev

使用数据透视聚合熊猫

来自分类Dev

数据表:对每列应用不同的formatStyle

来自分类Dev

熊猫数据透视表排列不聚合

来自分类Dev

熊猫计数中的数据透视表聚合()

来自分类Dev

数据透视表索引中的聚合

来自分类Dev

熊猫计数中的数据透视表聚合()

来自分类Dev

按索引聚合数据透视表

来自分类Dev

如何使用数据透视表显示不同表的列?

来自分类Dev

使用不同的参数集多次应用相同的函数

来自分类Dev

如何在Pandas的数据透视表函数中聚合索引值?

来自分类Dev

DataError: 在 Pandas 中创建数据透视表时没有要聚合的数字类型

来自分类Dev

每次使用jQuery函数时如何调用不同的元素?

来自分类Dev

每次调用函数 JavaScript 时使用不同的数组

来自分类Dev

使用不同工作表中的 SUMIFS 时出错

来自分类Dev

R 使用不同数据帧的闪亮嵌套输入函数

来自分类Dev

SSRS-使用不同日期的数据集(表)

来自分类Dev

使用 VBA 创建数据透视表时出错

来自分类Dev

使用数据透视表时显示所有列

Related 相关文章

  1. 1

    使用数据透视表时应用不同的聚合函数

  2. 2

    在Pandas数据透视表的列上应用聚合函数

  3. 3

    使用数据透视表时,同时为aggfunc应用两个numpy函数

  4. 4

    如何将聚合函数应用于Pandas中数据透视表的所有列

  5. 5

    如何在Pandas的数据透视表上应用带有条件的聚合函数?

  6. 6

    如何在laravel 8中使用不同的数据透视表播种多对多关系?

  7. 7

    如何在laravel 8中使用不同的数据透视表播种多对多关系?

  8. 8

    使用SQL Server 2008 R2在数据透视表查询中的聚合函数

  9. 9

    如何直接在数据透视表上使用计数聚合函数?

  10. 10

    在postgres中使用不同的日期和聚合函数

  11. 11

    在基于数据值使用json2html转换数据时,如何应用不同的样式?

  12. 12

    使用数据透视聚合熊猫

  13. 13

    数据表:对每列应用不同的formatStyle

  14. 14

    熊猫数据透视表排列不聚合

  15. 15

    熊猫计数中的数据透视表聚合()

  16. 16

    数据透视表索引中的聚合

  17. 17

    熊猫计数中的数据透视表聚合()

  18. 18

    按索引聚合数据透视表

  19. 19

    如何使用数据透视表显示不同表的列?

  20. 20

    使用不同的参数集多次应用相同的函数

  21. 21

    如何在Pandas的数据透视表函数中聚合索引值?

  22. 22

    DataError: 在 Pandas 中创建数据透视表时没有要聚合的数字类型

  23. 23

    每次使用jQuery函数时如何调用不同的元素?

  24. 24

    每次调用函数 JavaScript 时使用不同的数组

  25. 25

    使用不同工作表中的 SUMIFS 时出错

  26. 26

    R 使用不同数据帧的闪亮嵌套输入函数

  27. 27

    SSRS-使用不同日期的数据集(表)

  28. 28

    使用 VBA 创建数据透视表时出错

  29. 29

    使用数据透视表时显示所有列

热门标签

归档