Skip to content

Pandas Шпаргалка

Подробное руководство по использованию библиотеки Pandas.

Установка Pandas

Команда Описание
conda install pandas Лучший способ получить pandas — через conda
python3 -m pip install --upgrade pandas Через PyPI
pip install pandas Стандартная установка через pip

Ключевые сокращения и импорт пакетов

Сокращение Описание
df Любой объект Pandas DataFrame
s Любой объект Pandas Series

Методы импорта

Команда Описание
import pandas as pd Импорт pandas с псевдонимом pd
import numpy as np Импорт numpy с псевдонимом np

Выбор данных

Команда Описание
df[col] Возвращает столбец как Series по имени столбца
df[[col1, col2]] Возвращает несколько столбцов как DataFrame
s.iloc[0] Выбор данных по позиции
s.loc['index_one'] Выбор данных по индексу
df.iloc[0,:] Возвращает первую строку
df.iloc[0,0] Возвращает первый элемент первого столбца

Очистка данных

Команда Описание
df.columns = ['a','b','c'] Переименование столбцов
pd.isnull() Проверяет наличие null-значений в DataFrame; возвращает Boolean-массив
pd.notnull() Проверяет наличие не-null-значений в DataFrame; возвращает Boolean-массив
df.dropna() Удаляет все строки, содержащие null-значения
df.dropna(axis=1) Удаляет все столбцы, содержащие null-значения
df.dropna(axis=1, thresh=n) Удаляет все строки, содержащие менее n не-null-значений
df.fillna(x) Заменяет все null-значения в DataFrame на x
s.astype(float) Преобразует тип данных Series в float
s.replace(1, 'one') Заменяет все значения, равные 1, на ‘one’
s.replace([1,3], ['one', 'three']) Заменяет 1 на ‘one’, а 3 на ’three’
df.rename(columns=lambda x: x + 1) Массовое переименование столбцов
df.rename(columns={'old_name': 'new_name'}) Выборочное переименование столбцов
df.set_index('column_one') Смена индексного столбца
df.rename(index=lambda x: x + 1) Массовое переименование индексов

Импорт данных

Команда Описание
pd.read_csv(filename) Импорт данных из CSV-файла
pd.read_table(filename) Импорт данных из текстового файла с разделителями
pd.read_excel(filename) Импорт данных из файла Excel
pd.read_sql(query, connection_object) Импорт данных из таблицы/базы данных SQL
pd.read_json(json_string) Импорт данных из строки JSON
pd.read_html(url) Извлечение таблиц из URL, строки или HTML-файла
pd.read_clipboard() Получение содержимого из буфера обмена и передача в read_table()
pd.DataFrame(dict) Импорт данных из объекта словаря (ключи — имена столбцов, значения — данные)

Экспорт данных

Команда Описание
df.to_csv(filename) Экспорт данных в CSV-файл
df.to_excel(filename) Экспорт данных в файл Excel
df.to_sql(table_name, connection_object) Экспорт данных в таблицу SQL
df.to_json(filename) Экспорт данных в текстовый файл в формате JSON

Обработка данных: Filter, Sort и GroupBy

Команда Описание
df[df[col] > 0.5] Выбор строк, где значение в столбце ‘col’ > 0,5
df.sort_values(col1) Сортировка данных по столбцу col1 (по умолчанию по возрастанию)
df.sort_values(col2, ascending=False) Сортировка данных по столбцу col2 по убыванию
df.sort_values([col1, col2], ascending=[True, False]) Сортировка по col1 по возрастанию, затем по col2 по убыванию
df.groupby(col) Возвращает объект GroupBy, сгруппированный по столбцу ‘col’
df.groupby([col1, col2]) Возвращает объект GroupBy, сгруппированный по нескольким столбцам
df.groupby(col1)[col2].mean() Возвращает среднее значение столбца col2 для каждой группы в col1
df.pivot_table(index=col1, values=[col2, col3], aggfunc=max) Создание сводной таблицы, сгруппированной по col1, с вычислением максимума для col2 и col3
df.groupby(col1).agg(np.mean) Возвращает среднее значение для всех столбцов, сгруппированных по col1
df.apply(np.mean) Применение функции np.mean к каждому столбцу
df.apply(np.max, axis=1) Применение функции np.max к каждой строке

Создание тестовых объектов

Команда Описание
pd.DataFrame(np.random.rand(20,5)) Создает DataFrame с 20 строками и 5 столбцами случайных чисел
pd.Series(my_list) Создает Series из итерируемого объекта my_list
df.index = pd.date_range('1900/1/30', periods=df.shape[0]) Добавление индекса даты

Просмотр и проверка данных

Команда Описание
df.head(n) Просмотр первых n строк DataFrame
df.tail(n) Просмотр последних n строк DataFrame
df.shape Проверка количества строк и столбцов
df.info() Просмотр индекса, типов данных и информации о памяти
df.describe() Просмотр сводной статистики для числовых столбцов
s.value_counts(dropna=False) Просмотр уникальных значений и их количества для Series
df.apply(pd.Series.value_counts) Просмотр уникальных значений и их количества для каждого столбца в DataFrame

Слияние данных

Команда Описание
df1.append(df2) Добавление строк из df2 в конец df1
pd.concat([df1, df2], axis=1) Добавление столбцов из df2 в конец df1
df1.join(df2, on=col1, how='inner') Слияние (Join) в стиле SQL между столбцами df1 и df2

Статистика данных

Команда Описание
df.describe() Просмотр сводной статистики для числовых столбцов
df.mean() Возвращает среднее значение всех столбцов
df.corr() Возвращает коэффициент корреляции между столбцами
df.count() Возвращает количество не-null-значений в каждом столбце
df.max() Возвращает максимальное значение каждого столбца
df.min() Возвращает минимальное значение каждого столбца
df.median() Возвращает медиану каждого столбца
df.std() Возвращает стандартное отклонение каждого столбца