Установка¶
Проще всего установить pandas в составе Anaconda — кроссплатформенного дистрибутива для анализа данных и научных вычислений. Это рекомендуемый метод установки для большинства пользователей.
Здесь вы также найдете инструкции по установке из исходников, с помощью PyPI, ActivePython, различных дистрибутивов Linux и версию для разработки.
Поддержка версий Python¶
Официально поддерживается Python 3.8, 3.9 и 3.10.
Установка pandas¶
Установка с помощью Anaconda¶
Установка pandas и остальной части стека NumPy и SciPy может быть немного сложной для неопытных пользователей.
Проще всего установить не только pandas, но и Python и самые популярные пакеты, составляющие стек SciPy (IPython , NumPy, Matplotlib и так далее) с использованием Anaconda — кроссплатформенного (Linux, macOS, Windows) дистрибутива Python для анализа данных и научных вычислений.
После запуска установщика пользователь получит доступ к pandas и остальной части стека SciPy без необходимости устанавливать что-либо еще и без необходимости ждать, пока какое-либо программное обеспечение будет скомпилировано.
Инструкции по установке Anaconda можно найти здесь.
Полный список пакетов, доступных в составе дистрибутива Anaconda, можно найти здесь.
Еще одним преимуществом установки Anaconda является то, что вам не нужны права администратора для ее установки. Anaconda может быть установлена в домашнем каталоге пользователя, что упрощает удаление Anaconda в случае необходимости (просто удалите эту папку).
Установка с помощью Miniconda¶
В предыдущем разделе было описано, как установить pandas в составе дистрибутива Anaconda. Однако этот подход означает, что вы установите более сотни пакетов и предполагает загрузку установщика, размер которого составляет несколько сотен мегабайт.
Если вы хотите иметь больший контроль над пакетами или пропускная способность интернета у вас ограничена, то установка pandas с помощью Miniconda может вам подойти лучше.
Conda — это менеджер пакетов, на котором построен дистрибутив Anaconda. Это менеджер пакетов, который является одновременно кроссплатформенным и независимым от языка (он похож на комбинацию pip и virtualenv).
Miniconda позволяет вам создать минимальную автономную установку Python, а затем использовать команды Conda для установки дополнительных пакетов (см. краткое руководство по Miniconda на русском).
Сначала вам нужно установить Conda, и загрузка и запуск Miniconda решит эту задачу. Установщик можно найти здесь.
Следующим шагом является создание новой среды 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 можно установить через pip из PyPI.
Примечание
У вас должен быть pip>=19.3
для установки из PyPI.
pip install pandas
Установка с ActivePython¶
Инструкции по установке ActivePython можно найти здесь. Версии 2.7, 3.5 и 3.6 включают pandas.
Установка с помощью менеджера пакетов вашего дистрибутива Linux.¶
Команды в этой таблице установят pandas для Python 3 из вашего дистрибутива.
Дистрибутив |
Статус |
Ссылка на скачивание / репозиторий |
Команда для установки |
---|---|---|---|
Debian |
стабильный |
|
|
Debian & Ubuntu |
нестабильный (последние пакеты) |
|
|
Ubuntu |
стабильный |
|
|
OpenSuse |
стабильный |
|
|
Fedora |
стабильный |
|
|
Centos/RHEL |
стабильный |
|
Однако пакеты в менеджерах пакетов linux часто отстают на несколько версий, поэтому, чтобы получить новейшую версию pandas, рекомендуется устанавливать ее с помощью команд pip
или conda
, описанных выше.
Обработка ошибок импорта¶
Если вы столкнулись с ошибкой ImportError, это обычно означает, что Python не смог найти pandas в списке доступных библиотек. Внутри Python есть список каталогов, в которых он ищет пакеты. Вы можете получить список этих каталогов с помощью команды:
import sys
sys.path
Одна из возможных причин ошибки — это если Python в системе установлен более одного раза, и pandas не установлен в том Python, который вы используете на текущий момент. В Linux/Mac вы можете запустить what python
на своем терминале, и он сообщит вам, какой Python вы используете. Если это что-то вроде «/usr/bin/python», вы используете Python из системы, что не рекомендуется.
Настоятельно рекомендуется использовать conda для быстрой установки и обновления пакетов и зависимостей. Вы можете найти простые инструкции по установке pandas в этом документе.
Установка из исходников¶
Полные инструкции по сборке из исходного дерева git см. в Contributing guide. Если вы хотите создать среду разработки pandas, смотрите Creating a development environment.
Запуск набора тестов¶
pandas оснащен исчерпывающим набором модульных тестов, покрывающих около 97% кодовой базы на момент написания этой статьи. Чтобы запустить его на своем компьютере и удостовериться, что все работает (и что у вас установлены все зависимости, программные и аппаратные), убедитесь, что у вас есть pytest >= 6.0 и Hypothesis >= 3.58, затем запустите:
>>> 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.6.0, 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 =====================
Зависимости¶
Пакет |
Минимальная поддерживаемая версия |
---|---|
1.18.5 |
|
2.8.1 |
|
2020.1 |
Рекомендуемые зависимости¶
numexpr: для ускорения некоторых числовых операций. numexpr использует несколько ядер, а также интеллектуальное разбиение на фрагменты и кэширование для достижения значительного ускорения. Установленная версия должна быть 2.7.1 или выше.
bottleneck: для ускорения определенных типов оценок
nan
. bottleneck использует специализированные подпрограммы cython для достижения больших ускорений. Установленная версия должна быть 1.3.1 или выше.
Примечание
Настоятельно рекомендуется установить эти библиотеки, поскольку они обеспечивают повышение скорости, особенно при работе с большими наборами данных.
Дополнительные зависимости¶
pandas имеет множество необязательных зависимостей, которые используются только для определенных методов. Например, для pandas.read_hdf()
требуется пакет pytables
, а для DataFrame.to_markdown()
– пакет tabulate
. Если необязательная зависимость не установлена, pandas выведет ImportError
при вызове метода, требующего этой зависимости.
Визуализация¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
matplotlib |
3.3.2 |
Библиотека графиков |
Jinja2 |
2.11 |
Условное форматирование с DataFrame.style |
tabulate |
0.8.7 |
Печать в формате, дружественном к Markdown (см. tabulate) |
Вычисления¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
SciPy |
1.14.1 |
Дополнительные статистические функции |
numba |
0.50.1 |
Альтернативный механизм выполнения операций прокатки (см. Enhancing performance) |
xarray |
0.15.1 |
pandas-подобный API для N-мерных данных |
Файлы Excel¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
XLRD |
2.0.1 |
Чтение Excel |
xlwt |
1.3.0 |
Запись Excel |
xlsxwriter |
1.2.2 |
Запись Excel |
openpyxl |
3.0.3 |
Чтение и запись файлов xlsx |
pyxlsb |
1.0.6 |
Чтение файлов xlsb |
HTML¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
BeautifulSoup4 |
4.8.2 |
Парсер HTML для read_html |
html5lib |
1.1 |
Парсер HTML для read_html |
lxml |
4.5.0 |
Парсер HTML для read_html |
Для использования функции верхнего уровня read_html()
необходима одна из следующих комбинаций библиотек:
BeautifulSoup4 и html5lib
BeautifulSoup4 и lxml
BeautifulSoup4 и html5lib и lxml
Только lxml, хотя в HTML Table Parsing Gotchas объясняется, почему вам, вероятно, не следует использовать этот подход.
Предупреждение
Если вы устанавливаете BeautifulSoup4, вы должны установить либо lxml, либо html5lib, либо оба.
read_html()
не работает, если установлен только BeautifulSoup4 (см. подробнее о парсерах в документации BeautifulSoup на русском).Настоятельно рекомендуется прочитать HTML Table Parsing Gotchas. Там объясняются проблемы, связанные с установкой и использованием трех вышеуказанных библиотек.
XML¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
lxml |
4.5.0 |
Анализатор XML для read_xml и построитель дерева для to_xml |
Базы данных SQL¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
SQLAlchemy |
1.4.0 |
Поддержка SQL для баз данных, отличных от sqlite |
psycopg2 |
2.8.4 |
Движок PostgreSQL для sqlalchemy |
pymysql |
0.10.1 |
Движок MySQL для sqlalchemy |
Другие источники данных¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
PyTables |
3.6.1 |
Чтение и запись на основе HDF5 |
blosc |
1.20.1 |
Сжатие для HDF5 |
zlib |
Сжатие для HDF5 |
|
fastparquet |
0.4.0 |
Чтение и запись parquet |
pyarrow |
1.0.1 |
Чтение и запись parquet, ORC и feather |
pyreadstat |
1.1.0 |
Чтение файлов SPSS (.sav) |
Предупреждение
Если вы хотите использовать
read_orc()
, настоятельно рекомендуется установить pyarrow с помощью conda. Ниже приводится краткое описание среды, в которой может работатьread_orc()
.Система
Conda
PyPI
Linux
Успешно
Ошибка (pyarrow == 3.0 Успешно)
macOS
Успешно
Не удалось
Windows
Не удалось
Не удалось
Доступ к данным в облаке¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
fsspec |
0.7.4 |
Обработка файлов помимо простых локальных и HTTP |
gcsfs |
0.6.0 |
Доступ к облачному хранилищу Google |
pandas-gbq |
0.14.0 |
Доступ к Google Big Query |
s3fs |
0.4.0 |
Доступ к Amazon S3 |
Буфер обмена¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
PyQt4/PyQt5 |
Ввод и вывод буфера обмена |
|
qtpy |
Ввод и вывод буфера обмена |
|
xclip |
Ввод и вывод буфера обмена в Linux |
|
xsel |
Ввод и вывод буфера обмена в Linux |
Сжатие¶
Зависимость |
Минимальная версия |
Примечания |
---|---|---|
Zstandard |
Сжатие Zstandard |