如何在Pandas中创建一个数据透视表,其中一列是某些值的平均值,另一列是其他列的总和?

时间:2015-06-09 14:18:14

标签: python pandas dataframe

基本上,我如何创建一个合并数据的数据透视表,其中代表的数据列之一是通过取{}} likelihood percentage(0.0 - 1.0)来计算,另一个是计算由number ordered总结所有这些?

现在我可以指定values=...来指示应该构成两者中的哪一个,但是当我指定aggfunc=...时,我不知道两者是如何互操作的。

在我的脑海中,我为values=...指定了两个值(可能百分比和有序数字)和aggfunc=...的两个值,但这似乎不起作用。

1 个答案:

答案 0 :(得分:0)

您可以使用aggfunccolumn:funtion)对提供key:value字典:

df = pd.DataFrame({'a':['a','a','a'],'m':[1,2,3],'s':[1,2,3]})
print df

   a  m  s
0  a  1  1
1  a  2  2
2  a  3  3

df.pivot_table(index='a', values=['m','s'], aggfunc={'m':pd.Series.mean,'s':sum})

    m  s
a      
a  2  6