最近在做Kaggle的练习赛,发现大家都在用pandas这个python数据分析的库来处理数据和提取特征。调研了一下Pandas,发现这个库真得非常方便。如果使用这个库来处理原始数据和提取特征,那么会大大提升工作效率。接下来准备花些时间学习一下这个库的使用。
Lesson1 参考资料: http://nbviewer.jupyter.org/urls/bitbucket.org/hrojas/learn-pandas/raw/master/lessons/01%20-%20Lesson.ipynb
读取CSV文件:
Location = r'C:\Users\david\notebooks\update\births1880.csv'
df = pd.read_csv(Location)
df的全称是DataFrame,可以将一个数据表格视为一个由m行n列组成的数据帧,如下所示:
访问表格内容:
使用df.Names或者df['Names']都可以将Names这一列取出来得到一个新的表格。而df[1:3]则可以取出表格中的1,2两行。
查看最大值等信息:
df['Births'].max()df提供了max等方法,可以得到某一列数据的一些统计值
[df['Births'] == df['Births'].max()] ,可以得到birth为最大值的行组成的列表
画折线图来观察数据:
df['Births'].plot()
访问多行多列:
# df.ix[rows,columns] df.ix[0:3,'Names']
df.loc['a']利用loc方法和ix方法都可以读取多行
Pandans Groupby的具体说明:
http://pandas.pydata.org/pandas-docs/stable/groupby.html?highlight=transform