Python Pandas教程

pandas教程 Pandas是经过BSD许可的开源的 Python 数据分析支持库,为Python编程语言提供了高性能,易于使用的数据结构和数据分析工具。Python with Pandas在包括学术,商业领域在内的广泛领域中使用,包括金融,经济学,统计学,分析等。Pandas是一个强大的分析结构化数据的工具集;它的使用基础是Numpy(提供高性能的矩阵运算);用于数据挖掘和数据分析,同时也提供数据清洗功能。在本教程中,我们将学习Python Pandas的各种功能以及如何在实践中使用它们。

本教程是为那些想要学习pandas的基础知识和各种功能的人准备的。这对从事数据清理和分析工作的人员特别有用。完成本教程后,您将发现自己具有中等专业知识水平,可以从中获得更高的专业知识水平。

学习pandas前您应该对计算机编程术语有基本的了解。对任何一种编程语言都有基本的了解是加分的。pandas库使用了NumPy的大多数功能。建议您先阅读有关NumPy的教程,然后再继续本教程。

Pandas 适用于处理以下类型的数据:

与 SQL 或 Excel 表类似的,含异构列的表格数据; NumPy 数组元素需具有相同的数据类型,因此在内存中的大小相同。 有序和无序(非固定频率)的时间序列数据; 带行列标签的矩阵数据,包括同构或异构型数据; 任意其它形式的观测、统计数据集, 数据转入 Pandas 数据结构时不必事先标记。

为何使用 Pandas?

Pandas 的主要数据结构是 Series(一维数据)与 DataFrame(二维数据),这两种数据结构足以处理金融、统计、社会科学、工程等领域里的大多数典型用例。对于 R 用户,DataFrame 提供了比 R 语言 data.frame 更丰富的功能。Pandas 基于 NumPy 开发,可以与其它第三方科学计算支持库完美集成。Pandas 就像一把万能瑞士军刀,下面仅列出了它的部分优势 :

处理浮点与非浮点数据里的缺失数据,表示为 NaN; 大小可变:插入或删除 DataFrame 等多维对象的列; 自动、显式数据对齐:显式地将对象与一组标签对齐,也可以忽略标签,在 Series、DataFrame 计算时自动与数据对齐; 强大、灵活的分组(group by)功能:拆分-应用-组合数据集,聚合、转换数据; 把 Python 和 NumPy 数据结构里不规则、不同索引的数据轻松地转换为 DataFrame 对象; 基于智能标签,对大型数据集进行切片、花式索引、子集分解等操作; 直观地合并(merge)、**连接(join)**数据集; 灵活地重塑(reshape)、**透视(pivot)**数据集; 轴支持结构化标签:一个刻度支持多个标签; 成熟的 IO 工具:读取文本文件(CSV 等支持分隔符的文件)、Excel 文件、数据库等来源的数据,利用超快的 HDF5 格式保存 / 加载数据; 时间序列:支持日期范围生成、频率转换、移动窗口统计、移动窗口线性回归、日期位移等时间序列功能。

这些功能主要是为了解决其它编程语言、科研环境的痛点。处理数据一般分为几个阶段:数据整理与清洗、数据分析与建模、数据可视化与制表,Pandas 是处理数据的理想工具。

其它说明:

Pandas 速度很快。Pandas 的很多底层算法都用 Cython 优化过。然而,为了保持通用性,必然要牺牲一些性能,如果专注某一功能,完全可以开发出比 Pandas 更快的专用工具。 Pandas 是 statsmodels 的依赖项,因此,Pandas 也是 Python 中统计计算生态系统的重要组成部分。 Pandas 已广泛应用于金融领域。

Pandas的简单实例

  $ pip install pandas
  $ python -i
  >>> pandaspd
 >>> df = pd.() 
 >>> print(df)
  Empty DataFrame
 Columns: []
 Index: []