Не следует путать с ПАНДАС.

pandas — программная библиотека на языке Python для обработки и анализа данных. Работа pandas с данными строится поверх библиотеки NumPy, являющейся инструментом более низкого уровня. Предоставляет специальные структуры данных и операции для манипулирования числовыми таблицами и временны́ми рядами. Название библиотеки происходит от эконометрического термина «панельные данные», используемого для описания многомерных структурированных наборов информации. pandas распространяется под новой лицензией BSD.

Pandas
Pandas logo.svg
Pandas mark.svg
Тип библиотека для Питона[d] и программа для численного анализа[d]
Автор Уэс Мак-Кинни[d]
Разработчик Уэс Мак-Кинни[d]
Написана на Python[1]
Операционная система кроссплатформенность
Последняя версия
Лицензия BSD
Сайт pandas.pydata.org​ (англ.)

Область примененияПравить

Основная область применения — обеспечение работы в рамках среды Python не только для сбора и очистки данных, но для задач анализа и моделирования данных, без переключения на более специфичные для статобработки языки (такие, как R и Octave).

Также активно ведётся работа по реализации «родных» категориальных типов данных.

Пакет прежде всего предназначен для очистки и первичной оценки данных по общим показателям, например среднему значению, квантилям и так далее; статистическим пакетом[en] он в полном смысле не является, однако наборы данных типов DataFrame и Series применяются в качестве входных в большинстве модулей анализа данных и машинного обучения (SciPy, Scikit-Learn[en] и других).

ВозможностиПравить

Основные возможности библиотеки:

  • Объект DataFrame для манипулирования индексированными массивами двумерных данных
  • Инструменты для обмена данными между структурами в памяти и файлами различных форматов
  • Встроенные средства совмещения данных и способы обработки отсутствующей информации
  • Переформатирование наборов данных, в том числе создание сводных таблиц
  • Срез данных по значениям индекса, расширенные возможности индексирования, выборка из больших наборов данных
  • Вставка и удаление столбцов данных
  • Возможности группировки позволяют выполнять трёхэтапные операции типа «разделение, изменение, объединение» (англ. split-apply-combine).
  • Слияние и объединение наборов данных
  • Иерархическое индексирование позволяет работать с данными высокой размерности в структурах меньшей размерности
  • Работа с временными рядами: формирование временных периодов и изменение интервалов и так далее

Библиотека оптимизирована для высокой производительности, наиболее важные части кода написаны на Cython и Си.

ИсторияПравить

Разработка пакета начата в 2008 году сотрудником AQR Capital Management[en] Уэсом Маккини (англ. Wes McKinney). Перед уходом из AQR ему удалось убедить руководство позволить опубликовать исходный код библиотеки под свободной лицензией.

Другой работник AQR — Чан Шэ — присоединился к проекту в 2012 году, став вторым главным разработчиком библиотеки. Примерно в то же время библиотека набрала популярность в среде Python-разработчиков, и к проекту присоединилось множество новых участников.

ПримечанияПравить

ЛитератураПравить

  • Маккинни У. Python и анализ данных = Python for Data Analysis. — ДМК Пресс, 2015. — 482 с. — ISBN 978-5-97060-315-4, 978-1-449-31979-3.
  • Бринк Х., Ричардс Д., Феверолф М. Машинное обучение. — Питер, 2018. — 336 с. — ISBN 978-5-496-02989-6.
  • Вандер Плас Дж. Python для сложных задач. Наука о данных и машинное обучение = Python Data Science Handbook: Essential Tools for Working with Data. — Питер, 2017. — 576 с. — ISBN 978-5-496-03068-7.
  • Хейдт М. Изучаем pandas = Learning pandas. — ДМК Пресс, 2018. — 432 с. — ISBN 978-5-97060-625-4.