安装#
安装 pandas 最简单的方法是将其作为 Anaconda 发行版的一部分进行安装。Anaconda 是一个用于数据分析和科学计算的跨平台发行版。对于大多数用户来说,推荐使用 Conda 包管理器进行安装。
还提供了从 from source 、PyPI 或 development version 的说明。
Python 版本支持#
官方支持 Python 3.9, 3.10, 3.11 和 3.12。
安装 pandas#
使用 Anaconda 安装#
For users that are new to Python, the easiest way to install Python, pandas, and the packages that make up the PyData stack (SciPy, NumPy, Matplotlib, and more) is with Anaconda, a cross-platform (Linux, macOS, Windows) Python distribution for data analytics and scientific computing. Installation instructions for Anaconda can be found here.
使用 Miniconda 安装#
对于有 Python 经验的用户,推荐使用 Miniconda 来安装 pandas。与 Anaconda 相比,Miniconda 可以创建最小化、自包含的 Python 安装,并使用 Conda 包管理器安装其他包,以及为您的安装创建虚拟环境。Miniconda 的安装说明 can be found here 。
下一步是创建一个新的 conda 环境。conda 环境类似于 virtualenv,允许您指定特定版本的 Python 和一组库。请从终端窗口运行以下命令。
conda create -c conda-forge -n name_of_my_env python pandas
这将创建一个只安装了 Python 和 pandas 的最小环境。要进入此环境,请运行:
source activate name_of_my_env
# On Windows
activate name_of_my_env
从 PyPI 安装#
可以通过 pip 从 PyPI 安装 pandas。
pip install pandas
备注
您必须拥有 pip>=19.3 才能从 PyPI 安装。
备注
建议使用虚拟环境来安装和运行 pandas,例如,使用 Python 标准库的 venv
pandas 也可以安装带有可选依赖项集,以启用某些功能。例如,要安装 pandas 以及读取 Excel 文件的可选依赖项:
pip install "pandas[excel]"
可以在 dependency section. 找到可安装的 extras 的完整列表。
处理 ImportError#
如果您遇到 ImportError,通常意味着 Python 在可用库列表中找不到 pandas。Python 内部有一个它会搜索以查找包的目录列表。您可以使用以下方法获取这些目录:
import sys
sys.path
用户遇到此错误的一种方式是,您的系统上有多个 Python 安装,并且您当前使用的 Python 安装中未安装 pandas。在 Linux/Mac 上,您可以在终端中运行 which python,它会告诉您正在使用哪个 Python 安装。如果显示的是“/usr/bin/python”之类的路径,则说明您正在使用系统自带的 Python,这是不推荐的。
强烈建议使用 conda 来快速安装以及进行包和依赖项的更新。您可以在 in this document 中找到 pandas 的简单安装说明。
从源代码安装#
请参阅 contributing guide 以获取从 git 源代码树构建的完整说明。此外,如果您想创建一个 pandas 开发环境,请参阅 creating a development environment 。
安装 pandas 的开发版本#
安装开发版本是最快捷的方式:
试用下一个版本将发布的某个新功能(即,从最近合并到主分支的 pull-request 中获得的功能)。
检查您遇到的某个 bug 在上一个版本发布后是否已修复。
开发版本通常每天从 anaconda.org 的 PyPI 注册表中上传到 scientific-python-nightly-wheels 索引。您可以通过运行以下命令来安装它。
pip install --pre --extra-index https://pypi.anaconda.org/scientific-python-nightly-wheels/simple pandas
请注意,您可能需要卸载现有版本的 pandas 才能安装开发版本。
pip uninstall pandas -y
运行测试套件#
pandas 配备了详尽的单元测试集。运行测试所需的包可以通过 pip install "pandas[test]" 进行安装。从 Python 终端运行测试。
>>> import pandas as pd
>>> pd.test()
running: pytest -m "not slow and not network and not db" /home/user/anaconda3/lib/python3.9/site-packages/pandas
============================= test session starts ==============================
platform linux -- Python 3.9.7, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/user
plugins: dash-1.19.0, anyio-3.5.0, hypothesis-6.29.3
collected 154975 items / 4 skipped / 154971 selected
........................................................................ [ 0%]
........................................................................ [ 99%]
....................................... [100%]
==================================== ERRORS ====================================
=================================== FAILURES ===================================
=============================== warnings summary ===============================
=========================== short test summary info ============================
= 1 failed, 146194 passed, 7402 skipped, 1367 xfailed, 5 xpassed, 197 warnings, 10 errors in 1090.16s (0:18:10) =
备注
这只是展示信息的一个示例。测试失败并不一定表示 pandas 安装已损坏。
依赖项#
必需的依赖项#
pandas 需要以下依赖项。
包 |
最低支持版本 |
|---|---|
1.22.4 |
|
2.8.2 |
|
2020.1 |
|
2022.7 |
可选依赖项#
pandas 有许多可选依赖项,它们仅用于特定方法。例如,pandas.read_hdf() 需要 pytables 包,而 DataFrame.to_markdown() 需要 tabulate 包。如果未安装可选依赖项,当调用需要该依赖项的方法时,pandas 将引发 ImportError。
如果使用 pip,可以在文件(例如 requirements.txt 或 pyproject.toml)中将可选的 pandas 依赖项作为可选附加项(例如 pandas[performance, aws])进行安装或管理。可以通过 pandas[all] 安装所有可选依赖项,具体的依赖项集合将在下面的部分列出。
性能依赖项(推荐)#
备注
强烈建议安装这些库,因为它们能提供速度上的提升,特别是在处理大型数据集时。
可通过 pip install "pandas[performance]" 安装
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
2.8.4 |
performance |
通过使用多个核心以及智能分块和缓存来加速某些数值运算,从而实现显著的速度提升。 |
|
1.3.6 |
performance |
通过使用专门的 cython 例程来加速处理某些类型的 |
|
0.56.4 |
performance |
接受 |
可视化#
可通过 pip install "pandas[plot, output-formatting]" 安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
matplotlib |
3.6.3 |
plot |
绘图库 |
Jinja2 |
3.1.2 |
output-formatting |
使用 DataFrame.style 进行条件格式化 |
tabulate |
0.9.0 |
output-formatting |
以 Markdown 友好的格式打印(参见 tabulate ) |
计算#
可通过 pip install "pandas[computation]" 安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
SciPy |
1.10.0 |
computation |
各种统计函数 |
xarray |
2022.12.0 |
computation |
面向 N 维数据的类 pandas API |
Excel 文件#
可通过 pip install "pandas[excel]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
xlrd |
2.0.1 |
excel |
读取 Excel |
xlsxwriter |
3.0.5 |
excel |
写入 Excel |
openpyxl |
3.1.0 |
excel |
读取 / 写入 xlsx 文件 |
pyxlsb |
1.0.10 |
excel |
读取 xlsb 文件 |
python-calamine |
0.1.7 |
excel |
读取 xls/xlsx/xlsb/ods 文件 |
HTML#
可通过 pip install "pandas[html]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
BeautifulSoup4 |
4.11.2 |
html |
read_html 的 HTML 解析器 |
html5lib |
1.1 |
html |
read_html 的 HTML 解析器 |
lxml |
4.9.2 |
html |
read_html 的 HTML 解析器 |
要使用顶层 read_html() 函数,需要以下组合之一的库:
仅 lxml ,尽管参考 HTML Table Parsing 以了解您可能 不 应该采用此方法的原因。
警告
如果您安装了 BeautifulSoup4 ,则必须安装 lxml 或 html5lib 或两者都安装。
read_html()不 会仅通过安装 BeautifulSoup4 来工作。强烈建议您阅读 HTML Table Parsing gotchas 。它解释了上述三个库的安装和使用相关问题。
XML#
可通过 pip install "pandas[xml]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
lxml |
4.9.2 |
xml |
read_xml 的 XML 解析器和 to_xml 的树构建器 |
SQL 数据库#
传统驱动程序可通过 pip install "pandas[postgresql, mysql, sql-other]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
SQLAlchemy |
2.0.0 |
postgresql, mysql, sql-other |
sqlite 以外数据库的 SQL 支持 |
psycopg2 |
2.9.6 |
postgresql |
SQLAlchemy 的 PostgreSQL 引擎 |
pymysql |
1.0.2 |
mysql |
SQLAlchemy 的 MySQL 引擎 |
adbc-driver-postgresql |
0.8.0 |
postgresql |
PostgreSQL 的 ADBC 驱动程序 |
adbc-driver-sqlite |
0.8.0 |
sql-other |
SQLite 的 ADBC 驱动程序 |
其他数据源#
可通过 pip install "pandas[hdf5, parquet, feather, spss, excel]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
PyTables |
3.8.0 |
hdf5 |
基于 HDF5 的读/写 |
blosc |
1.21.3 |
hdf5 |
HDF5 的压缩;仅在 |
zlib |
hdf5 |
HDF5 的压缩 |
|
fastparquet |
2022.12.0 |
Parquet 读/写(pyarrow 是默认) |
|
pyarrow |
10.0.1 |
parquet, feather |
Parquet、ORC 和 feather 读/写 |
pyreadstat |
1.2.0 |
spss |
SPSS 文件 (.sav) 读取 |
odfpy |
1.4.1 |
excel |
打开文档格式 (.odf, .ods, .odt) 读/写 |
警告
如果您想使用
read_orc(),强烈建议使用 conda 安装 pyarrow。read_orc()在从 pypi 安装 pyarrow 时可能会失败,并且read_orc()与 Windows 操作系统不兼容。
访问云端数据#
可通过 pip install "pandas[fss, aws, gcp]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
fsspec |
2022.11.0 |
fss, gcp, aws |
处理本地和 HTTP 以外的文件(s3fs、gcsfs 的必需依赖项)。 |
gcsfs |
2022.11.0 |
gcp |
Google Cloud Storage 访问 |
pandas-gbq |
0.19.0 |
gcp |
Google Big Query 访问 |
s3fs |
2022.11.0 |
aws |
Amazon S3 访问 |
剪贴板#
可通过 pip install "pandas[clipboard]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
PyQt4/PyQt5 |
5.15.9 |
clipboard |
剪贴板 I/O |
qtpy |
2.3.0 |
clipboard |
剪贴板 I/O |
备注
根据操作系统,可能需要安装系统级程序包。要在 Linux 上操作剪贴板,必须在您的系统上安装 CLI 工具 xclip 或 xsel 之一。
压缩#
可通过 pip install "pandas[compression]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
Zstandard |
0.19.0 |
compression |
Zstandard 压缩 |
Consortium Standard#
可通过 pip install "pandas[consortium-standard]" 进行安装。
依赖项 |
最低版本 |
pip 附加选项 |
说明 |
|---|---|---|---|
dataframe-api-compat |
0.1.7 |
consortium-standard |
基于 pandas 的 Consortium Standard 兼容实现。 |