- 一个 Python 的数据分析库
- 关于 Pandas
- 获取 Pandas
- v0.25.0 版本特性(2019年7月18日)
- 安装
- 快速入门
- Pandas 用户指南目录
- IO工具(文本,CSV,HDF5,…)
- 索引和数据选择器
- 多层级索引和高级索引
- Merge, join, and concatenate
- Reshaping and pivot tables
- Pandas 处理文本字符串
- Working with missing data
- Categorical data
- Nullable 整型数据类型
- Visualization
- Computational tools
- Group By: split-apply-combine
- 时间序列与日期用法
- 时间差
- Styling
- Options and settings
- Enhancing performance
- Sparse data structures
- Frequently Asked Questions (FAQ)
- 烹饪指南
- Pandas 生态圈
- API 参考手册
- 开发者文档
- 发布日志
安装
安装Pandas的最简单方法是将其安装为Anacondaopen in new window发行版的一部分,这是一种用于数据分析和科学计算的跨平台发行版。这是大多数用户的推荐安装方法。
还提供了从源,PyPIopen in new window,ActivePythonopen in new window,各种Linux发行版或开发版本open in new window进行安装的说明。
计划移除对Python 2.7的支持
Python核心团队计划在2020年1月1日停止支持Python 2.7。按照NumPy的计划,2018年12月31日之前的所有Pandas版本都仍支持Python 2(译者注:之后的版本将不再支持)。
2018年12月31日之前的最终版本将是支持Python 2的最后一个版本。已发布的软件包将继续在PyPI和conda上提供。
- 从 2019年1月1日 开始,所有版本都只支持Python 3。
如果有人对2018年12月31日之后对Python 2.7的持续支持感兴趣(反向移植错误修正或资金支持),请联系问题跟踪器上的维护人员。
有关更多信息,请参见 Python 3 语法open in new window 和 移植到Python 3指南open in new window。
Python版本支持
正式的 Python 2.7、3.5、3.6和3.7 版本。
安装 Pandas
通过Anaconda安装
对于没有经验的新手朋友来说,安装Pandas以及其余的NumPyopen in new window和SciPyopen in new window等工具包可能会有点困难。
最简单的方法不是直接安装Pandas,而是安装Python和构成SciPy数据科学技术栈的最流行的工具包(IPythonopen in new window,NumPyopen in new window,Matplotlibopen in new window,...)的集合Anacondaopen in new window,它是一个跨平台(Linux,Mac OS X,Windows)的Python发行版,用于数据分析和科学计算。
在运行安装程序之后,用户将可以访问Pandas和SciPyopen in new window工具包的任何工具,而不需要安装任何其他东西,也不需要等待任何软件编译,非常的方便。
可以在此处open in new window找到Anacondaopen in new window的安装说明。
可以在这里open in new window找到作为Anacondaopen in new window发行版一部分的可用软件包的完整列表。
安装Anaconda的另一个优点是安装它不需要管理员权限。Anaconda可以安装在用户的主目录中,如果您决定删除Anaconda(只需删除该文件夹就可以),这就非常方便了。
通过Miniconda安装
上一节概述了如何安装Pandas作为Anacondaopen in new window 发行版的一部分。但是,这种方法意味着您将安装超过一百个包,并涉及下载几百兆字节的安装程序。
如果您只想要安装你需要的包,或者具有有限的互联网带宽,那么使用Minicondaopen in new window安装Pandas可能是更好的解决方案。
Condaopen in new window是Anacondaopen in new window发行版所基于的软件包管理器。它是一个跨平台的且和语言无关的包管理器(它可以起到与pip和virtualenv组合类似的作用)。
Minicondaopen in new window允许您创建最小的Python安装包,然后使用Condaopen in new window命令安装其他软件包。
首先你需要安装Condaopen in new window,下载并运行Minicondaopen in new window会帮你做这件事。安装程序可以在这里open in new window找到。
下一步是创建一个新的conda环境。conda环境就像一个virtualenv,它允许您指定特定版本的Python和你需要的第三方库。从终端窗口运行以下命令:
$ conda create -n name_of_my_env python
这将创建一个只安装了Python的最小环境。把你自己放在这个环境中(激活环境):
$ source activate name_of_my_env
在Windows上,命令是:
$ activate name_of_my_env
最后一步是安装Pandas,可以使用以下命令完成:
$ conda install Pandas
要安装特定的Pandas版本:
$ conda install Pandas=0.20.3
要安装其他软件包,例如IPython:
$ conda install ipython
要安装完整的Anaconda发行版:
$ conda install anaconda
如果您需要可用于pip而不是conda的软件包,请安装pip,然后使用pip安装这些软件包:
$ conda install pip
$ pip install django
从PyPI安装
Pandas可以通过PyPIopen in new window.的pip安装。
$ pip install Pandas
通过ActivePython安装
可以在此处open in new window找到ActivePythonopen in new window的安装说明。 版本2.7和3.5 包含了 pandas。
使用Linux发行版的包管理器进行安装。
此表中的命令将从您的发行版安装Python 3版本的Pandas。要安装Python 2版本的Pandas,您可能需要使用 python-Pandas
包。
发行版名称 | 状态 | 下载 / 仓库地址 | 安装方法 |
---|---|---|---|
Debian | stable | official Debian repositoryopen in new window | sudo apt-get install |
Debian & Ubuntu | unstable (latest packages) | NeuroDebianopen in new window | |
Ubuntu | stable | official Ubuntu repositoryopen in new window | sudo apt-get install python3-Pandas |
OpenSuse | stable | OpenSuse Repositoryopen in new window | zypper in python3-Pandas |
Fedora | stable | official Fedora repositoryopen in new window | dnf install python3-Pandas |
Centos/RHEL | stable | EPEL repositoryopen in new window | yum install python3-Pandas |
However,Linux的包管理器中的包通常落后几个版本,因此要获得最新版本的Pandas,建议使用上面描述的pip
或conda
方法进行安装。
从源码安装
有关从git源代码树构建的完整说明,请参阅贡献指南open in new window。此外,如果您希望创建一个pandas开发环境,请参阅创建开发环境open in new window。
运行测试套件
大Pandas配备了一套详尽的单元测试,涵盖了撰写本文时约97%的代码库。要在您的计算机上运行它以验证一切正常(并且您已经安装了所有依赖项,软的和硬的),请确保您有 pytestopen in new window > = 4.0.2 和 Hypothesisopen in new window > = 3.58,然后运行:
>>> import Pandas as pd
>>> pd.test()
running: pytest --skip-slow --skip-network C:\Users\TP\Anaconda3\envs\py36\lib\site-packages\Pandas
============================= test session starts =============================
platform win32 -- Python 3.6.2, pytest-3.2.1, py-1.4.34, pluggy-0.4.0
rootdir: C:\Users\TP\Documents\Python\Pandasdev\Pandas, inifile: setup.cfg
collected 12145 items / 3 skipped
..................................................................S......
........S................................................................
.........................................................................
==================== 12130 passed, 12 skipped in 368.339 seconds =====================
依赖
Package | 最低支持版本 |
---|---|
setuptoolsopen in new window | 24.2.0 |
NumPyopen in new window | 1.13.3 |
python-dateutilopen in new window | 2.6.1 |
pytzopen in new window | 2017.2 |
推荐的依赖关系
- numexpropen in new window: 用于加速某些数值运算。
numexpr
使用多个内核以及智能分块和缓存来实现大型加速。如果已安装,则必须为2.6.2或更高版本。 - bottleneckopen in new window: 加速某些类型的
nan
评估。bottleneck
使用专门的cython例程来实现大的加速。 如果已安装,则必须为1.2.1或更高版本。
注意
强烈建议您安装这些库,因为它们可以提高处理速度,尤其是在处理大型数据集时。
可选的依赖项
Pandas有许多可选的依赖项,仅用于特定的方法。 例如,pandas.read_hdf()open in new window 需要pytables
包。 如果未安装可选依赖项,则在调用需要该依赖项的方法时,pandas将引发ImportError
。
依赖名称 | 最低版本 | 注意 |
---|---|---|
BeautifulSoup4 | 4.6.0 | HTML parser for read_html (see note) |
Jinja2 | Conditional formatting with DataFrame.style | |
PyQt4 | Clipboard I/O | |
PyQt5 | Clipboard I/O | |
PyTables | 3.4.2 | HDF5-based reading / writing |
SQLAlchemy | 1.1.4 | SQL support for databases other than sqlite |
SciPy | 0.19.0 | Miscellaneous statistical functions |
XLsxWriter | 0.9.8 | Excel writing |
blosc | Compression for msgpack | |
fastparquet | 0.2.1 | Parquet reading / writing |
gcsfs | 0.2.2 | Google Cloud Storage access |
html5lib | HTML parser for read_html (see note) | |
lxml | 3.8.0 | HTML parser for read_html (see note) |
matplotlib | 2.2.2 | Visualization |
openpyxl | 2.4.8 | Reading / writing for xlsx files |
pandas-gbq | 0.8.0 | Google Big Query access |
psycopg2 | PostgreSQL engine for sqlalchemy | |
pyarrow | 0.9.0 | Parquet and feather reading / writing |
pymysql | 0.7.11 | MySQL engine for sqlalchemy |
pyreadstat | SPSS files (.sav) reading | |
pytables | 3.4.2 | HDF5 reading / writing |
qtpy | Clipboard I/O | |
s3fs | 0.0.8 | Amazon S3 access |
xarray | 0.8.2 | pandas-like API for N-dimensional data |
xclip | Clipboard I/O on linux | |
xlrd | 1.1.0 | Excel reading |
xlwt | 1.2.0 | Excel writing |
xsel | Clipboard I/O on linux | |
zlib | Compression for msgpack |
用于解析HTML的可选依赖项
要使用顶级read_html()open in new window函数,需要以下一种库组合:
Changed in version 0.23.0.
- BeautifulSoup4open in new window 和 html5libopen in new window
- BeautifulSoup4open in new window 和 lxmlopen in new window
- BeautifulSoup4open in new window 和 html5libopen in new window 和 lxmlopen in new window
- 只有 lxmlopen in new window,请参阅HTML表解析open in new window,以了解为什么您可能不应该采用这种方法。
警告
- 如果您安装BeautifulSoup4open in new window,您必须安装lxmlopen in new window或html5libopen in new window或两个都安装。
read_html()
open in new window 不能只安装 BeautifulSoup4open in new window。 - 我们强烈建议您阅读 HTML表解析之坑open in new window。 它解释了有关上述三个库的安装和使用的问题。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论