Урок курса
Pandas для начинающих: что изучать и в каком порядке
NumPy и pandas: практический тренажёрpandas — библиотека Python для работы с таблицами: CSV-файлами, выгрузками из баз данных, отчётами и наборами наблюдений. Центральный объект библиотеки — DataFrame. Он хранит данные в строках и столбцах и позволяет фильтровать, очищать, группировать и объединять их без ручного перебора каждой строки.
На этой странице собран последовательный маршрут для новичка. Он ведёт от устройства DataFrame к обработке пропусков, группировкам и объединению таблиц. Каждый пункт связан с бесплатным практическим уроком.
Что нужно знать до pandas
Для старта достаточно базового Python: переменных, списков, словарей, условий, функций и импорта модулей. Знание высшей математики не требуется. Полезно уметь читать короткий traceback и запускать код в Jupyter Notebook, VS Code или другом привычном окружении.
import pandas as pd
sales = pd.DataFrame({
"city": ["Москва", "Казань", "Москва", "Казань"],
"revenue": [120_000, 85_000, None, 95_000],
})
В примере четыре наблюдения и два признака. Одно значение выручки пропущено. Уже на такой маленькой таблице возникают главные задачи pandas: понять структуру данных, выбрать нужные строки, обработать пропуск и посчитать итог по городам.
Маршрут изучения pandas
1. Разберитесь с Series и DataFrame
Series — одномерная последовательность с индексом, а DataFrame — двумерная таблица. Начните с типов столбцов, индекса, формы и выбора данных. В уроке «Pandas DataFrame и Series» показано, как создать таблицу и прочитать её основные свойства.
2. Научитесь загружать данные
В реальной работе таблицы обычно приходят из CSV. Важно сразу контролировать разделитель, кодировку, типы столбцов и даты. Иначе число может незаметно превратиться в строку, а дата — остаться обычным текстом. Разбор параметров находится в уроке «Pandas read_csv».
3. Освойте loc и iloc
loc выбирает данные по меткам, а iloc — по целочисленным позициям. Их смешивание часто приводит к ошибкам. Практические примеры и отличие двух способов собраны в уроке «loc и iloc в pandas».
# строки с выручкой не ниже 90 000
large_sales = sales.loc[sales["revenue"] >= 90_000, ["city", "revenue"]]
# первые две строки и все столбцы
first_rows = sales.iloc[:2, :]
4. Обработайте пропуски осознанно
Пропуск нельзя автоматически заменять нулём во всех задачах. Ноль может означать реальное отсутствие продаж, тогда как NaN — неизвестное значение. Сначала выясните причину пропуска, затем выбирайте fillna, dropna или отдельный признак. Подробности есть в уроке «fillna и dropna».
sales["revenue"] = sales["revenue"].fillna(sales["revenue"].median())
5. Перейдите к groupby и agg
Группировка отвечает на вопросы вроде «какова сумма и средняя выручка по каждому городу». Лучше давать агрегатам явные имена: так результат проще читать и использовать дальше. Пошаговый разбор находится в уроке «Pandas groupby и agg».
report = (
sales.groupby("city", as_index=False)
.agg(
total_revenue=("revenue", "sum"),
average_revenue=("revenue", "mean"),
)
)
6. Научитесь соединять таблицы
merge соединяет таблицы по ключу, а concat складывает объекты по строкам или столбцам. Перед объединением проверяйте уникальность ключей и ожидаемое количество строк. Это защищает от незаметного размножения данных. Примеры собраны в уроке «Pandas merge и concat».
Какие ошибки чаще всего делают новички
- Меняют отфильтрованный фрагмент таблицы через цепочку квадратных скобок и получают непредсказуемый результат.
- Не проверяют
dtypesпосле загрузки CSV и выполняют арифметику над строками. - Удаляют все строки с пропусками, не оценив, сколько данных потеряется.
- Применяют
applyтам, где достаточно векторного выражения. - Объединяют таблицы по неуникальному ключу и получают больше строк, чем ожидалось.
Что изучать после основ
После загрузки, выборки, очистки, группировки и объединения данных переходите к временным столбцам, категориальным типам, pivot_table, оконным расчётам и построению воспроизводимых пайплайнов. Бесплатный курс NumPy и pandas выстраивает эти темы по порядку и содержит задачи с автоматической проверкой.
Продолжить с проверкой и прогрессом
Откройте интерактивный раннер с заданиями урока.
