首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python pandas pivot vs pivot_table

Python pandas pivot vs pivot_table
EN

Stack Overflow用户
提问于 2019-08-12 19:39:21
回答 1查看 404关注 0票数 0

如果我在Pandas中有一个多索引DataFrame,如果我通读了pivotpivot_table的文档,我似乎找不到pivot在这个例子中不能工作的原因。显然,我遗漏了一些东西,但它采用了相同的参数,似乎表明它会起作用。这里我漏掉了什么?为什么pivot抛出一个错误,而pivot_table却完美地工作。谢谢。

代码语言:javascript
复制
# standard imports
import pandas as pd

# create a random multiindex dataframe
outside = ['G1','G1','G1','G2','G2','G2']
inside = [1,2,3,1,2,3]
hier_index = list(zip(outside,inside))
hier_index = pd.MultiIndex.from_tuples(hier_index)
df = pd.DataFrame(np.random.randn(6,1),index=hier_index,columns=['A'])
df.index.names = ['Group', 'Num']

# show the original dataframe
print(df)

# successfully pivots the dataframe as requested
print(df.pivot_table(index='Group', columns='Num', values='A'))

# causes a KeyError on 'Group' - not understanding why
print(df.pivot(index='Group', columns='Num', values='A'))
EN

回答 1

Stack Overflow用户

发布于 2019-08-12 19:41:04

这里的函数pivot不使用MultiIndex,解决方案是将级别转换为列的DataFrame.reset_index

代码语言:javascript
复制
print(df.reset_index().pivot(index='Group', columns='Num', values='A'))
Num           1         2         3
Group                              
G1    -0.121167 -2.008585 -0.920647
G2     0.168234 -1.319892  1.266429

我认为在groupby-enhancements中隐藏了工作pivot_table nice的原因--你可以使用groupby by levels和类似的pivot_table

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57460506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档