Pandas多重索引与面板
在使用Pandas的时候,为什么要选择Panel而不是多重索引的DataFrame呢?
我个人觉得这两者在访问不同的维度或层级时,使用起来的难易程度差别很大。不过这可能只是因为我对其中一个的操作界面更熟悉。我想它们之间应该还有其他更重要的区别。
2 个回答
3
在pandas的版本0.20.1(2017年5月5日)中,Panel这个功能已经被弃用了,未来的版本中将会被移除。现在推荐使用MultiIndex在DataFrame中表示三维数据,或者使用xarray这个包。
参考资料:
10
在我的实践中,最明显、最容易看出的区别是,Panel 在每个维度上都需要是统一的。如果你把 Panel 看作是一个数据框(Dataframe)的堆叠,你不能通过堆叠大小不同或者索引/列不同的数据框来创建它。不过,你确实可以通过多重索引来处理更多不统一类型的数据。
所以,第一步选择必须根据你的数据如何组织来决定。