注意:

现状问题:新版的pandas库已经移除了数据结构panel

解决办法:使用MultiIndex的DataFrame结构替代

下一篇文章介绍 MultiIndex

----------------------------------------------------------------------------------------------

简介:

在pandas,我们有一维数据——Series,有二维数据——DataFrame,那么,我们有时候有三维数据的需求,pandas提供三维数据结构——panel

我们可以使用numpy.array数据结构来生成,一维数组生成Series,二维数组生成DataFrame,三维数组生成panel

pandas.Panel(data, items, major_axis, minor_axis, dtype, copy)

# 参数介绍

  • data: 数据,支持ndarray, series, map, lists, dict, constant 和 DataFrame
  • items: axis = 0 的索引
  • major_axis: 理解为dataframe中的index
  • minor_axis: 理解为dataframe中的columns
  • dtype: 每列的数据类型
  • copy: 复制数据, 默认-False

创建

# 方式一
p = pd.Panel(np.random.rand(2,4,5))
# 方式二
data = {'Item1' : pd.DataFrame(np.random.randn(4, 3)), 
        'Item2' : pd.DataFrame(np.random.randn(4, 2))}
p = pd.Panel(data)

切片

df = p['Item1']   # 返回dataframe
df = p.major_xs(1)   # 返回dataframe,一维的索引为列
df = p.minor_xs(1)   # 范围dataframe, 一维的索引为列
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐