(1)pandas 基础教程

步骤1、环境准备

右击桌面上选择【Open in Terminal】 打开终端。
在弹出的终端中输入【ipython】进入Python的解释器中,如图1所示。

 

图1 ipython解释器

步骤2、导入所需要的包

导入实验常用的python包。如图2所示。
【import pandas as pd】pandas用来做数据处理。
【import numpy as np】numpy用来做高维度矩阵运算.
【import matplotlib.pyplot as plt】matplotlib用来做数据可视化。

 

图2 导入所需要的包

步骤3、创建对象

通过传递一个list对象来创建一个Series,pandas会默认创建整型索引,如图3所示。
【s = pd.Series([1,3,5,np.nan,6,8]】将一个list传入到Series对象
【s】查看s的值

 

图3 创建Series对象


通过传递一个 numpy array,时间索引以及列标签来创建一个 DataFrame,如图4所示。
【datas = pd.date_range(‘20170101’, periods=6)】生成20170101-20170106 六天的日期
【datas】查看生成的数据
【df = pd.DataFrame(np.random.randn(6,4), index=datas, columns=list(‘ABCD’))】以时间为索引以及ABCD为列标签创建一个DataFrame对象
【df】查看生成的DataFrame对象

 

图4 创建DataFrame对象


通过传递一个能够被转换成类似序列结构的字典对象来创建一个DataFrame。如图5所示:

df2 = pd.DataFrame({ ‘A’ : 1.,
‘B’ : pd.Timestamp(‘20170101’),
‘C’ : pd.Series(1,index=list(range(4)),dtype=’float32’),
‘D’ : np.array([3] * 4,dtype=’int32’),
‘E’ : pd.Categorical([“test”,”train”,”test”,”train”]),
‘F’ : ‘foo’ })
】生成一个字典对象,并传递生成一个DataFrame
【df2】查看生成的DataFrame
【df2.dtype】查看不同列的数据类型

 

图5 传递字典生成DataFrame对象

步骤4、查看数据

查看 DataFrame 中头部和尾部的行,如图6所示。
【df.head()】查看dataFrame的前五行
【df.tail(3)】查看dataFrame的后三行

 

图6 查看数据1


查看df的索引,列名称和底层的numpy数据,如图7所示。
【df.index】查看dataFrame的索引。
【df.columns】查看dataFrame的列名称
【df.values】查看dataFrame底层的数据

 

图7 查看数据2


describe()函数对于数据的快速统计汇总,如图8所示
【df.describe()】对数据进行快速汇总

 

图8 对数据汇总


对数据的转置,如图9所示。
【df.T】

 

图9 对数据的转置


对数据的排序,如图10所示。
【df.sort_index(axis=1, ascending=False)】按轴进行排序
【df.sort_values(by=’B’)】按值进行排序

 

图10 对数据的排序

步骤5、数据的选择

对数据的获取,如图11所示。
【df[‘A’]】选择一个单独的列,返回一个Series
【df[0:3]】切片显示
【df[‘20170101’:’20170103’]】指定日期切片

 

图11 对数据的获取


通过标签选择,如图12所示。
【df.loc[datas[0]]】使用标签来获取一个交叉的区域
【df.loc[‘20170102’,[‘A’,’B’]]】对于返回对象进行维度缩减
【df.loc[‘20170101’:’20170103’,[‘A’,’B’]]】标签切片
【df.loc[‘20170102’,[‘A’,’B’]]】对于返回对象进行维度缩减
【df.loc[dates[0],’A’]】获取一个标量

 

图12 通过标签选择


通过位置选择,如图13所示
【df.iloc[3]】通过传递数值进行位置选择(选择的是行)
【df.iloc[3:5,0:2]】通过数值进行切片选择
【df.iloc[[1,2,4],[0,2]]】通过指定一个位置的列表选择
【df.iloc[1:3,:]】对行进行切片
【df.iloc[:,1:3]】对列进行切片
【df.iloc[1,1]】获取特定的值

 

图13 通过位置选择

步骤6、布尔索引

布尔索引,如图14所示。
【df[df.A > 0]】使用一个单独列的值来选择数据
【df[df > 0]】通过where操作选取数据
【df2 = df.copy()】
【df2[‘E’] = [‘one’, ‘one’,’two’,’three’,’four’,’three’]】
【df2】
【df2[df2[‘E’].isin([‘two’,’four’])]】使用 isin() 方法来过滤

 

图14 布尔索引
posted @ 2017-11-28 11:34 悉达多尊 阅读(...) 评论(...) 编辑 收藏