Pandas — это изумительная библиотека на Python для анализа и обработки данных. Она настолько хороша, что проще сказать, чего она не умеет, чем перечислить все её возможности. В мире аналитики это настоящий швейцарский нож.
В этой статье я хочу поделиться личным топом методов, которые помогают в первичной обработке больших данных.
Подготовка данных
Для примеров я использую датасет по недвижимости в индийском регионе Хайдарабад (CSV можно взять по ссылке).
import pandas as pd # загружаем данные data = pd.read_csv(r'ваш_путь_к_файлу\Hyderabad.csv') # смотрим первые и последние строки data.head(10) data.tail(10) # список всех колонок data.columns
1. Первичный анализ: агрегаты
mean_price = data['Price'].mean() # среднее max_price = data['Price'].max() # максимум min_price = data['Price'].min() # минимум sum_price = data['Price'].sum() # сумма std_price = data['Price'].std() # стандартное отклонение median_price = data['Price'].median() # медиана count_data = data['Price'].count() # количество непустых значений
И мега-метод:
data['Price'].describe()
2. Фильтрация
Фильтрация в Pandas удобна, но с нюансами: вместо and/or/not используются &, |, ~.
# исключаем Madhapur data[data['Location'] != 'Madhapur'] # несколько условий data[(data['Location'] != 'Madhapur') & (data['Price'] < 3_000_000)] # с бассейном и спортзалом data[(data['SwimmingPool'] == 1) & (data['Gymnasium'] == 1)]
3. Поиск минимальной цены
filtered = data[(data['SwimmingPool'] == 1) & (data['Gymnasium'] == 1)] min_house = filtered[filtered['Price'] == filtered['Price'].min()]
👉 Так находим самый дешёвый дом с заданными условиями.
4. GroupBy
Метод groupby — один из самых сильных в Pandas (и очень похож на SQL).
# максимум цены по каждой локации data.groupby('Location')['Price'].max() # несколько агрегатов data.groupby('Location')['Price'].agg(['max', 'min', 'mean', 'median'])
5. Between и isin
# цены между 10 и 50 млн data[data['Price'].between(10_000_000, 50_000_000)] # проверка на вхождение data[data['Location'].isin(['Delhi', 'Mumbai'])]
6. Уникальность и дубликаты
# уникальные значения data['No. of Bedrooms'].unique() # количество уникальных data['Location'].nunique() # частота значений data['Location'].value_counts() # поиск дубликатов data['Location'].duplicated() # удаление дубликатов data['Location'].drop_duplicates()
Итоги
Вот быстрый чек-лист полезных методов Pandas:
-
📊
mean(), max(), min(), sum(), std(), median(), describe()— агрегаты -
🔎
[],& | ~— фильтрация -
🏷
groupby(), agg()— группировка -
📐
between(), isin()— выборки по условиям -
🎭
unique(), value_counts(), nunique()— уникальные значения -
🔄
duplicated(), drop_duplicates()— дубликаты
👉 Pandas — мощный инструмент, а эти методы — лишь малая часть его возможностей. Но даже они позволяют превратить CSV-файл в полноценный аналитический источник.
ссылка на оригинал статьи https://habr.com/ru/articles/940028/
Добавить комментарий