Pandas面板 Pandas DataFrame Pandas基本功能 甲 面板 是数据的3D容器。术语 面板数据 来自计量经济学,部分负责名称pandas - pan(el)-da(ta) -s。 3轴的名称旨在为描述涉及面板数据的操作提供一些语义含义。他们是 - items - 轴0,每个项目对应于一个包含在里面的DataFrame。 major_axis - 轴1,它是每个DataFrame的索引(行)。 minor_axis - 第2轴,它是每个DataFrame的列。 pandas.Panel() 面板可以使用以下构造函数创建 - pandas.Panel(data, items, major_axis, minor_axis, dtype, copy) 构造函数的参数如下所示 - 参数 描述 data 数据采用各种形式,如ndarray,序列,地图,列表,字典,常量和另一个DataFrame items axis=0 major_axis axis=1 minor_axis axis=2 dtype 每列的数据类型 copy 复制数据。默认, **false** 创建面板 面板可以使用多种方式创建,例如 - 从ndarrays 来自DataFrames的字典 从3D ndarray # creating an empty panel import pandas as pd import numpy as np 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 注 - 观察空面板和上面面板的尺寸,所有对象都不相同。 来自DataFrame对象的字典 #creating an empty 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 其 输出 如下 - <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 创建一个空面板 可以使用面板构造函数创建一个空面板,如下所示 - #creating an empty 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 从面板中选择数据 使用 - 从面板中选择数据 - 项目 Major_axis Minor_axis 使用项目 # creating an empty 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['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 我们有两个项目,我们检索了item1。结果是具有4行和3列的 DataFrame ,它们是 Major_axis 和 Minor_axis 维度。 使用major_axis 可以使用 panel.major_axis(index) 方法访问数据。 # creating an empty 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.major_xs(1) 其 输出 如下 - Item1 Item2 0 0.417497 0.748412 1 0.896681 -0.557322 2 0.576657 NaN 使用minor_axis 可以使用方法 panel.minor_axis(index) 访问数据 。 # creating an empty 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.minor_xs(1) 其 输出 如下 - Item1 Item2 0 -0.128637 -1.047032 1 0.896681 -0.557322 2 0.571668 0.431953 3 -0.144234 1.302466 注 - 观察尺寸的变化。 Pandas DataFrame Pandas基本功能