• Lesson5——Pandas Panel三维数据结构


    pandas目录

    1 简介

      自 Pandas 0.25 版本后, Panel 结构已经被废弃。

    pd.__version__  #查看pandas版本
    #'1.2.4'
    #或者
    pd.show_versions()

      Panel 结构也称“面板结构”,源自于 Panel Data 一词,翻译为“面板数据”。

      Panel 是三维数据结构,有三个轴,分别是:

    • items(0 轴):axis =0,Panel 中的每个 items 都对应一个 DataFrame。
    • major_axis(1 轴):axis=1,用来描述每个 DataFrame 的行索引。
    • minor_axis(2 轴):axis=2,用来描述每个 DataFrame 的列索引。

    2 创建Panel 对象

      创建 Panel 对象有两种方式

    • 使用 nadarry 数组创建,
    • 使用 DataFrame 对象创建。

    2.1 创建空的 Panel 对象

    import pandas as pd 
    p = pd.Panel()
    print(p)

      输出结果:

    <class 'pandas.core.panel.Panel'>
    Dimensions: 0 (items) x 0 (major_axis) x 0 (minor_axis)
    Items axis: None
    Major_axis axis: None
    Minor_axis axis: None

    2.2 ndarray三维数组创建

    import pandas as pd
    import numpy as np
    #返回均匀分布的随机样本值位于[0,1)之间
    data = np.random.rand(2,4,5)
    p = pd.Panel(data)
    print (p)

      输出结果:

    <class 'pandas.core.panel.Panel'>
    Dimensions: 2 (items) x 4 (major_axis) x 5 (minor_axis)
    Items axis: 0 to 1
    Major_axis axis: 0 to 3
    Minor_axis axis: 0 to 4

    2.3 DataFrame创建

      使用 DataFrame 创建一个 Panel :

    import pandas as pd
    import numpy as np
    data = {'Item1' : pd.DataFrame(np.random.randn(4, 3)),
       'Item2' : pd.DataFrame(np.random.randn(4, 2))}
    p = pd.Panel(data)
    print(p)

      输出结果:

    Dimensions: 2 (items) x 4 (major_axis) x 3 (minor_axis)
    Items axis: Item1 to Item2
    Major_axis axis: 0 to 3
    Minor_axis axis: 0 to 2

    3 Panel中选取数据

      使用 Panel 的三个轴来实现,也就是 itemsmajor_axisminor_axis。下面介绍其中一种:

    3.1 使用 items选取数据

      示例如下:

    import pandas as pd
    import numpy as np
    data = {'Item1':pd.DataFrame(np.random.randn(4, 3)),
       'Item2':pd.DataFrame(np.random.randn(4, 2))}
    p = pd.Panel(data)
    print(p['Item1'])

      输出结果:

                0          1          2
    0    0.488224  -0.128637   0.930817
    1    0.417497   0.896681   0.576657
    2   -2.775266   0.571668   0.290082
    3   -0.400538  -0.144234   1.110535

      上述示例中 data,包含了两个数据项,我们选择了 Item1,输出结果是 4 行 3 列的 DataFrame,其行、列索引分别对应 major_axis 和 minor_axis。

  • 相关阅读:
    “正则表达式”实践日志
    一种存储数据的方法
    计划
    位运算
    ACM
    ACM-括号匹配问题
    [转]昆明长水机场安防系统应用案例分析
    Request.ServerVariables详细说明
    大数据平台的秘密
    【转】MongoDB资料汇总专题
  • 原文地址:https://www.cnblogs.com/BlairGrowing/p/15866284.html
Copyright © 2020-2023  润新知