Pandas

Pandas是Python中用于数据处理和分析的库,尤其对于大数据行业的数据清洗很有帮助。

通过带有标签的列和索引,Pandas 使我们可以以一种所有人都能理解的方式来处理数据。它可以让我们毫不费力地从诸如 csv 类型的文件中导入数据。我们可以用它快速地对数据进行复杂的转换和过滤等操作。

开始使用Pandas

对于使用 Python 库,第一步必然是import

import pandas as pd

数据类型 Data types

Pandas 基于两种数据类型,seriesdataframe

文件操作

从文件导入数据

保存数据

数据操作

列操作 Column operations

行操作 Row operations

单元格操作 Cell operations

数据筛选

索引 Index

可以根据索引来获取某一行,而且获取行数据的方法是根据标签的类型变化而变化的。

排序 Sort

将索引排序通常会很有用,在 Pandas 中,我们可以对 dataframe 调用 sort_index 方法进行排序。

df.sort_index(ascending=False)

当将一列设置为索引的时候,它就不再是数据的一部分了。如果你想将索引恢复为数据,调用set_index 相反的方法 reset_index 即可:

对数据集应用函数

有时你想对数据集中的数据进行改变或者某种操作。比方说,你有一列年份的数据,你需要新的一列来表示这些年份对应的年代。Pandas 中有两个非常有用的函数, applyapplymap

def base_year(year):
    base_year = year[:4]
    base_year= pd.to_datetime(base_year).year
    return base_year

df['year'] = df.water_year.apply(base_year)
df.head(5)

操作数据集的结构

合并数据集

将有两个相关联的数据集放在一起:

rain_jpn = pd.read_csv('jpn_rain.csv')
rain_jpn.columns = ['year', 'jpn_rainfall']
uk_jpn_rain = df.merge(rain_jpn, on='year')
uk_jpn_rain.head(5)

需要通过 on 关键字来指定需要合并的列。通常你可以省略这个参数,Pandas 将会自动选择要合并的列。

快速画图

Matplotlib 很棒,但是想要绘制出还算不错的图表却要写不少代码,而有时你只是想粗略的做个图来探索下数据,搞清楚数据的含义。Pandas 通过 plot 来解决这个问题:

uk_jpn_rain.plot(x='year', y=['rain_octsep', 'jpn_rainfall'])

References

回到目录