pandas Panel 的使用
1、可以使用多种方式创建Panel,3D ndarray
import pandas as pdimport numpy as npdata = np.random.rand(2,4,5)p = pd.Panel(data)print p

2、DataFrame Objects的dict
代码如下:
import pandas as pdimport numpy as ndata = {'num1' : pd.DataFrame(np.random.randn(2, 3)), 'num2' : pd.DataFrame(np.random.randn(5, 7))}p = pd.Panel(data)print p
输出结果:
<class 'pandas.core.panel.Panel'>
Dimensions: 2 (items) x 5 (major_axis) x 7 (minor_axis)
Items axis: num1 to num2
Major_axis axis: 0 to 4
Minor_axis axis: 0 to 6
Process finished with exit code 0


3、从面板中选择数据
可以使用方法panel.major_axis(index)访问数据。
import pandas as pdimport numpy as npdata = {'num1' : pd.DataFrame(np.random.randn(2, 3)), 'num2' : pd.DataFrame(np.random.randn(5, 7))}p = pd.Panel(data)print p.major_xs(1)
输出:
num1 num2
0 -0.482575 0.644123
1 -0.586697 0.926272
2 -0.458282 1.655456
3 NaN -0.224877
4 NaN -0.515318
5 NaN -0.802214
6 NaN -0.449112


4、创建一个Series并查看所有上面列表的属性操作
import pandas as pdimport numpy as nps = pd.Series(np.random.randn(19))print s
输出:
Connected to pydev debugger (build 181.5087.37)
0 1.296886
1 0.374176
2 0.457002
3 0.309732
4 -0.360474
5 -0.400794
6 0.395560


5、轴返回系列标签的列表。
import pandas as pdimport numpy as nps = pd.Series(np.random.randn(19))print ("The axes are:")print s.axes
输出结果:
Connected to pydev debugger (build 181.5087.37)
The axes are:
[RangeIndex(start=0, stop=19, step=1)]


6、NDIM返回对象的维数。根据定义,Series是一维数据结构
import pandas as pdimport numpy as nps = pd.Series(np.random.randn(19))print sprint ("The dimensions of the object:")print s.ndim
输出:
1

7、形状返回表示DataFrame维度的元组。元组(a,b),其中a表示行数,b表示列数。
import pandas as pdd = {'Name': pd.Series(['zhangsan', 'xiaomin', 'lisi', 'lili']), 'Phone': pd.Series([13537106722, 13537106721, 13537106726, 13737106726]), 'Age': pd.Series([22, 24, 25 , 26])}# Create a DataFramedf = pd.DataFrame(d)print ("object:")print dfprint ("shape:")print df.shape
输出:
object:
Age Name Phone
0 22 zhangsan 13537106722
1 24 xiaomin 13537106721
2 25 lisi 13537106726
3 26 lili 13737106726
shape:
(4, 3)

