SQL наряду с Python — основные языки аналитика. Павел Беляев, ментор курса «Аналитик данных» и ведущий канала «Тимлидское об аналитике», коротко рассказывает о базовых библиотеках Python, которые должен знать каждый специалист по данным.
Если вы только стартуете в аналитике данных, эти инструменты будет полезно освоить, а если бывалый — освежить в памяти.
1. Pandas: король обработки данных
Pandas позволяет работать с таблицами как с обычными переменными, а называются они датафреймами. Всё что можно делать с таблицами в SQL, доступно и в Python:
- Чтение и запись данных в разных форматах;
- Фильтрация, сортировка, группировка;
- Объединение датасетов;
- Базовые статистические операции.
import pandas as pd
df = pd.read_csv('data.csv') # записывает в датафрейм данные из файла csv
df.head() # выводит первые строки датафрейма
2. NumPy: математика для больших данных
NumPy — инструмент для работы с числами и таблицами (массивами), который делает такие операции в десятки раз быстрее и удобнее, чем обычный Python.
Например, он помогает аналитику в следующих случаях:
- Работа с большими массивами данных и матрицами;
- Математические операции;
- Генерация случайных чисел.
import numpy as np
array = np.array([1, 2, 3, 4, 5]) # создаёт одномерный массив
mean = np.mean(array) # вычисляет среднее значение массива
3. Matplotlib и Seaborn: визуализация данных, обычно датафреймов
Если NumPy — основа для расчётов, то Matplotlib — основа для визуализации. Она позволяет строить графики любого типа: точечные, круговые, гистограммы, ящики с усами и многое другое. Визуализации помогают не только анализировать конечный результат, но и выполнять предобработку и очистку данных.
Seaborn — это библиотека, построенная поверх Matplotlib. Она делает визуализацию красивой, современной и быстрой, не заставляя вручную настраивать каждый элемент. Seaborn автоматически подбирает цвета и стили, добавляет подписи, работает напрямую с таблицами Pandas и упрощает построение сложных графиков.
import matplotlib.pyplot as plt
import seaborn as sns
# Простой график по точкам
plt.plot([1, 2, 3], [4, 5, 6])
plt.show()
4. Scipy: основы статистического анализа
Библиотека SciPy — это набор инструментов для математических и научных задач: статистики, оптимизации и многого другого.
Например, она позволяет:
- Вычислить среднее, дисперсию, медиану, корреляцию данных и проверить статистические гипотезы;
- Найти минимум функции или оптимальное значение параметра;
- Посчитать интегралы и производные;
- Работать с распределениями вероятностей;
- Обрабатывать сигналы, изображения и временные ряды.
from scipy import stats
# Проведение t-теста для независимых выборок
# Сравнивает средние значения двух групп данных
# Помогает определить, есть ли статистически значимые различия между выборками
result = stats.ttest_ind(data1, data2) # data1 и data2 — массивы сравниваемых данных
5. Statsmodels: ещё более продвинутая статистика
Statsmodels — библиотека, которая помогает строить статистические модели и проверять гипотезы на реальных данных. Если говорить проще, она позволяет не только считать средние и корреляции, как в SciPy, а делать полноценный статистический анализ — например, регрессию или тесты значимости факторов.
Statsmodels пригодится для задач по регрессионному анализу, построению временных рядов или эконометрике.
import statsmodels.api as sm
# Простая линейная регрессия
model = sm.OLS(y, x).fit()
Бонус: какие IDE использовать для Python-разработки
Про инструменты для аналитики поговорили, а что насчёт пространства, где всё это реализовать? Расскажу про несколько вариантов.
- Jupyter Notebook и JupyterLab. Jupyter Notebook — это интерактивная среда, где код, текст и визуализации можно объединять в одном документе. JupyterLab — более продвинутая версия, которая добавляет вкладки, файловый менеджер и удобный интерфейс.
Обе среды входят в состав Anaconda — популярного дистрибутива Python для анализа данных и машинного обучения.
-
Google Colab. Это онлайн-версия Jupyter, нужен лишь браузер и аккаунт Google. Colab особенно удобен, если вы хотите быстро протестировать код, делиться проектами или работать с ноутбуками в команде.
-
Visual Studio Code или VS Code. А это универсальная среда для профессиональной разработки. Она поддерживает Python через расширения, позволяет запускать код построчно, работать с Git, отлаживать программы и оформлять проекты в едином интерфейсе.
Начинающим аналитикам удобнее стартовать с Jupyter или Google Colab, а при росте задач и проектов переходить в VS Code для полноценной разработки.