入门#

安装#

使用 conda?

pandas is part of the Anaconda distribution and can be installed with Anaconda or Miniconda:

首选 pip?

可以通过 pip 从 PyPI 安装 pandas。

需要更深入的说明?

安装特定版本?从源码安装?请查看高级安装页面。

pandas 导论#

当处理表格数据(例如存储在电子表格或数据库中的数据)时,pandas 是适合您的工具。pandas 将帮助您探索、清理和处理数据。在 pandas 中,数据表称为 DataFrame

../_images/01_table_dataframe.svg

pandas 原生支持与许多文件格式或数据源集成(csv、excel、sql、json、parquet……)。从这些数据源导入数据由带有 read_* 前缀的函数提供。类似地,to_* 方法用于存储数据。

../_images/02_io_readwrite.svg

选择或过滤特定行和/或列?根据条件过滤数据?pandas 提供了用于切片、选择和提取所需数据的方法。

../_images/03_subset_columns_rows.svg

pandas 利用 Matplotlib 的强大功能,原生支持绘制数据。您可以根据数据选择图表类型(散点图、条形图、箱线图…)。

../_images/04_plot_overview.svg

无需遍历数据表的所有行即可执行计算。对列的数据操作是逐元素的。基于其他列中的现有数据向 DataFrame 添加列非常简单。

../_images/05_newcolumn_2.svg

基本统计量(均值、中位数、最小值、最大值、计数……)易于计算。这些或自定义聚合可以应用于整个数据集、数据滑动窗口,或按类别分组。后者也称为拆分-应用-合并方法。

../_images/06_groupby.svg

以多种方式更改数据表的结构。您可以将数据表 melt() 从宽格式转换为长/整洁格式,或将数据 pivot() 从长格式转换为宽格式。由于内置了聚合功能,只需一个命令即可创建数据透视表。

../_images/07_melt.svg

可以按列和行合并多个表,并提供类似数据库的连接/合并操作来组合多个数据表。

../_images/08_concat_row.svg

pandas 对时间序列提供了极好的支持,并拥有一套广泛的工具来处理日期、时间和时间索引数据。

数据集不仅仅包含数值数据。pandas 提供了广泛的函数来清理文本数据并从中提取有用信息。

来自…#

您是否熟悉其他用于处理表格数据的软件?了解 pandas 等同于您已知的软件的操作:

The R programming language provides the data.frame data structure and multiple packages, such as tidyverse use and extend data.frame for convenient data handling functionalities similar to pandas.

大家都熟悉 SELECT, GROUP BY, JOIN 等 SQL 操作吗?pandas 中大部分这些 SQL 操作都有对应的功能。

STATA 统计软件套件中包含的 数据集 对应于 pandas 的 DataFrame。很多从 STATA 中熟知的操作在 pandas 中都有对应的功能。

熟悉 Excel 或其他电子表格软件的用户会发现,pandas 中的许多概念都是可以迁移过来的。

SAS 统计软件套件也提供了与 pandas DataFrame 对应的 数据集。此外,SAS 的向量化操作、过滤、字符串处理等也有类似的功能在 pandas 中。

教程#

要快速了解 pandas 的功能,请参阅 10 Minutes to pandas

您还可以参考 pandas 的 cheat sheet ,以获得使用 pandas 操作数据的简明指南。

社区提供了各种在线教程。其中一些材料已在社区贡献的 社区教程 中列出。