Prog Academy
RU UA
Данные и аналитика

Что такое pandas в Python?

pandas — библиотека Python для работы с табличными данными. Её основной объект, DataFrame, — это таблица со строками и столбцами, которую можно фильтровать, группировать, объединять и считать по ней метрики несколькими строками кода.

По сути pandas делает то же, что Excel и SQL, но программно и без ограничений по объёму листа. Загрузка CSV, чистка пропусков, приведение типов, сводные таблицы, соединение источников — всё это стандартные операции библиотеки.

Главное преимущество — воспроизводимость. Обработка записана кодом, поэтому её можно перезапустить на новых данных, проверить, передать коллеге и поставить на расписание. С ручными манипуляциями в таблице так не получится.

Где применяется

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

Эта же библиотека — стандартный первый шаг в машинном обучении: данные готовят в pandas, а затем передают в scikit-learn. Работают с ней чаще всего в Jupyter Notebook, где код и результат идут вперемешку, что удобно при исследовании незнакомого набора данных.

Пример

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

import pandas as pd

orders = pd.read_csv('orders.csv', parse_dates=['created_at'])

paid = orders[orders['status'] == 'paid']

revenue_by_city = (paid
    .groupby('city')['total']
    .agg(['count', 'sum'])
    .sort_values('sum', ascending=False))

print(revenue_by_city.head(10))
Загрузка, фильтрация и группировка: тот же результат, что у SQL-запроса, но внутри Python-скрипта.

Частые вопросы

Чем pandas лучше Excel?

Воспроизводимостью и объёмом. Обработка записана кодом, поэтому её можно перезапустить на новых данных, проверить и поставить на расписание. К тому же pandas спокойно работает с миллионами строк, на которых Excel уже перестаёт отвечать.

Что такое DataFrame?

Основной объект библиотеки — таблица со строками, именованными столбцами и индексом. По смыслу это лист Excel или результат SQL-запроса, только внутри Python: его можно фильтровать, группировать, соединять с другими таблицами и считать по нему метрики.

Нужно ли знать Python, чтобы работать с pandas?

Достаточно базового уровня: переменные, списки, циклы, функции, работа с файлами. Углублённое знание языка приходит по ходу. Многие аналитики начинают именно с pandas, потому что результат виден сразу и мотивация учиться держится лучше.

Когда pandas перестаёт справляться?

Когда данные не помещаются в оперативную память — примерно от нескольких десятков миллионов строк, в зависимости от машины. В этот момент переходят на Polars, Dask или Spark, либо переносят тяжёлые вычисления на сторону базы данных.

Подробная статья в блоге →

Связанные термины