Установка#

Самый простой способ установить pandas — установить его как часть Anaconda дистрибутив, кроссплатформенный дистрибутив для анализа данных и научных вычислений. The Conda менеджер пакетов является рекомендуемым методом установки для большинства пользователей.

Инструкции по установке из источника, PyPI, или разрабатываемая версия также предоставляются.

Поддержка версий Python#

Официально поддерживаются Python 3.9, 3.10, 3.11 и 3.12.

Установка pandas#

Установка с помощью Anaconda#

Для новых пользователей Python самый простой способ установить Python, pandas и пакеты, составляющие PyData stack (SciPy, NumPy, Matplotlib, и другие) осуществляется с помощью Anaconda, кроссплатформенное (Linux, macOS, Windows) дистрибутив Python для анализа данных и научных вычислений. Инструкции по установке Anaconda можно найти здесь.

Установка с Miniconda#

Для пользователей, знакомых с Python, рекомендуемый способ установки pandas с помощью Miniconda. Miniconda позволяет создать минимальную, автономную установку Python по сравнению с Anaconda и использовать Conda менеджер пакетов для установки дополнительных пакетов и создания виртуального окружения для вашей установки. Инструкции по установке Miniconda можно найти здесь.

Следующий шаг — создать новое окружение 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#

pandas можно установить через pip из PyPI.

pip install pandas

Примечание

Вы должны иметь pip>=19.3 для установки из PyPI.

Примечание

Рекомендуется устанавливать и запускать pandas из виртуального окружения, например, используя venv

pandas также можно установить с наборами опциональных зависимостей для включения определённой функциональности. Например, чтобы установить pandas с опциональными зависимостями для чтения файлов Excel.

pip install "pandas[excel]"

Полный список дополнительных пакетов, которые можно установить, можно найти в раздел зависимостей.

Обработка ошибок импорта (ImportErrors)#

Если вы столкнетесь с ImportError, это обычно означает, что Python не смог найти pandas в списке доступных библиотек. Python внутренне имеет список каталогов, которые он просматривает для поиска пакетов. Вы можете получить эти каталоги с помощью.

import sys
sys.path

Одна из возможных причин этой ошибки — наличие нескольких установок Python в системе без установленного pandas в текущей используемой версии. В Linux/Mac можно выполнить which python в вашем терминале, и он покажет, какую установку Python вы используете. Если это что-то вроде "/usr/bin/python", вы используете Python из системы, что не рекомендуется.

Настоятельно рекомендуется использовать conda, для быстрой установки и обновления пакетов и зависимостей. Вы можете найти простые инструкции по установке pandas в этом документе.

Установка из исходного кода#

См. руководство по внесению вклада для получения полных инструкций по сборке из исходного дерева git. Кроме того, см. создание среды разработки если вы хотите создать среду разработки pandas.

Установка версии pandas для разработки#

Установка версии для разработчиков — самый быстрый способ:

  • Попробуйте новую функцию, которая будет включена в следующий релиз (то есть функцию из pull-request, который недавно был объединен в основную ветку).

  • Проверьте, была ли исправлена обнаруженная вами ошибка с момента последнего релиза.

Разрабатываемая версия обычно загружается ежедневно в индекс scientific-python-nightly-wheels из реестра PyPI на anaconda.org. Вы можете установить её, выполнив команду.

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 требует следующие зависимости.

Пакет

Минимальная поддерживаемая версия

NumPy

1.22.4

python-dateutil

2.8.2

pytz

2020.1

tzdata

2022.7

Необязательные зависимости#

pandas имеет множество опциональных зависимостей, которые используются только для специфических методов. Например, pandas.read_hdf() требует pytables пакет, в то время как DataFrame.to_markdown() требует tabulate пакет. Если опциональная зависимость не установлена, pandas вызовет ImportError когда вызывается метод, требующий этой зависимости.

При использовании pip, дополнительные зависимости pandas могут быть установлены или управляться в файле (например, requirements.txt или pyproject.toml) как дополнительные опции (например, pandas[performance, aws]). Все опциональные зависимости могут быть установлены с помощью pandas[all], и конкретные наборы зависимостей перечислены в разделах ниже.

Визуализация#

Устанавливается с помощью pip install "pandas[plot, output-formatting]".

Зависимость

Минимальная версия

pip extra

Примечания

matplotlib

3.6.3

plot

Библиотека построения графиков

Jinja2

3.1.2

форматирование-вывода

Условное форматирование с DataFrame.style

tabulate

0.9.0

форматирование-вывода

Вывод в формате, совместимом с Markdown (см. tabulate)

Вычисления#

Устанавливается с помощью pip install "pandas[computation]".

Зависимость

Минимальная версия

pip extra

Примечания

SciPy

1.10.0

вычисление

Различные статистические функции

xarray

2022.12.0

вычисление

API в стиле pandas для N-мерных данных

Файлы Excel#

Устанавливается с помощью pip install "pandas[excel]".

Зависимость

Минимальная версия

pip extra

Примечания

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 extra

Примечания

BeautifulSoup4

4.11.2

html

HTML парсер для read_html

html5lib

1.1

html

HTML парсер для read_html

lxml

4.9.2

html

HTML парсер для read_html

Для использования функций верхнего уровня требуется одна из следующих комбинаций библиотек: read_html() функция:

Предупреждение

XML#

Устанавливается с помощью pip install "pandas[xml]".

Зависимость

Минимальная версия

pip extra

Примечания

lxml

4.9.2

xml

XML парсер для read_xml и построитель дерева для to_xml

SQL базы данных#

Традиционные драйверы устанавливаются с помощью pip install "pandas[postgresql, mysql, sql-other]"

Зависимость

Минимальная версия

pip extra

Примечания

SQLAlchemy

2.0.0

postgresql, mysql, sql-other

Поддержка SQL для баз данных, отличных от sqlite

psycopg2

2.9.6

postgresql

Движок PostgreSQL для sqlalchemy

pymysql

1.0.2

mysql

Движок MySQL для sqlalchemy

adbc-driver-postgresql

0.8.0

postgresql

Драйвер ADBC для PostgreSQL

adbc-driver-sqlite

0.8.0

sql-other

ADBC Driver for SQLite

Другие источники данных#

Устанавливается с помощью pip install "pandas[hdf5, parquet, feather, spss, excel]"

Зависимость

Минимальная версия

pip extra

Примечания

PyTables

3.8.0

hdf5

Чтение/запись на основе HDF5

blosc

1.21.3

hdf5

Сжатие для HDF5; доступно только на conda

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(), настоятельно рекомендуется устанавливать pyarrow с помощью conda. read_orc() может завершиться ошибкой, если pyarrow был установлен из pypi, и read_orc() не совместимо с операционной системой Windows.

Доступ к данным в облаке#

Устанавливается с помощью pip install "pandas[fss, aws, gcp]"

Зависимость

Минимальная версия

pip extra

Примечания

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 extra

Примечания

PyQt4/PyQt5

5.15.9

буфер обмена

Ввод-вывод через буфер обмена

qtpy

2.3.0

буфер обмена

Ввод-вывод через буфер обмена

Примечание

В зависимости от операционной системы, возможно, потребуется установить системные пакеты. Для работы буфера обмена в Linux один из CLI инструментов xclip или xsel должен быть установлен в вашей системе.

Сжатие#

Устанавливается с помощью pip install "pandas[compression]"

Зависимость

Минимальная версия

pip extra

Примечания

Zstandard

0.19.0

compression

Сжатие Zstandard

Стандарт Консорциума#

Устанавливается с помощью pip install "pandas[consortium-standard]"

Зависимость

Минимальная версия

pip extra

Примечания

dataframe-api-compat

0.1.7

консорциум-стандарт

Совместимая с консорциумным стандартом реализация на основе pandas