pandas教程
更多地可以 参考教程
安装
pip install pandas
pandas的类excel操作,超级方便:
import pandas as pd
dates = pd.date_range('20130101', periods=6)
print dates
df = pd.DataFrame(np.random.randn(6,4), index=dates, columns=list('ABCD'))
print df
# 1. 行的选取
rows = df[0:3]
print rows
# 2.列的选取
cols = df[['A', 'B', 'C']]
print cols
# 3. 块的选取
shape = df.loc['20130102':'20130104',['A','B']]
print shape
操作行和块
Pandas 中的基本数据结构有二,Series
和 Dataframe
Series
用来创建行,也可以理解为一维数组。
创建一个数组[1,1,2,3,5]:
# 创建一个数组[1,1,2,3,5]:
s = pd.Series([1,1,2,3,5])
print s
Dataframe
用来创建块,或称为矩阵,表格。
创建一个 6x4 的表格块,单元格内容为随机数列名为 A,B,C,D。
blockForm = pd.DataFrame(np.random.randn(6,4), columns=list('ABCD'))
print blockForm
从已有的列创建一个新的列
df['sumAB'] = pd.Series(df['A'] + df['B'], index=df.index)
df['10A'] = pd.Series(df['A']*10, index=df.index)
print df
df['A'] + df['B']
表示两列对应单元格的相加
df['A']*10
表示列A每个单元格 *10
根据条件过滤行
在方括号中加入判断条件来过滤行,条件必需返回 True
或者 False
df[(df.index >= '2013-01-01') & (df.index <= '2013-01-03')]
df[df['A'] > 0]
窥视数据
为了快速了解数据的结构,一些值得掌握的指令如下:
# 查看表头5行
df.head(5)
# 查看表末5行
df.tail(5)
# 查看列的名字
df.columns
# 查看表格当前的值
df.values
# 查看所有列的统计描述,包括平均值,标准差,最大最小值,
# 以及25%,50%,75%的 percentile 值
df.describe()
# 对表按照A列升序排序
df.sort_values(by=’A’)