Введение

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

Понимание стандартизации

Стандартизация, также известная как масштабирование функций, преобразует переменные в наборе данных в общий масштаб, что позволяет проводить объективное сравнение и анализ. Это гарантирует, что все переменные имеют одинаковый диапазон и распределение, что имеет решающее значение для различных алгоритмов машинного обучения, которые имеют одинаковую важность среди функций.

Почему важна стандартизация?

Стандартизация важна по нескольким причинам:

  • Это делает функции сопоставимыми. Когда функции находятся в разных масштабах, их может быть сложно сравнивать. Стандартизация гарантирует, что все функции находятся в одном масштабе, что упрощает их сравнение и интерпретацию результатов алгоритмов машинного обучения.
  • Повышает производительность алгоритмов машинного обучения. Алгоритмы машинного обучения часто работают лучше всего, когда функции имеют одинаковый масштаб. Стандартизация может помочь повысить производительность этих алгоритмов, обеспечив одинаковый масштаб функций.
  • Снижает влияние выбросов. Выбросы — это точки данных, которые значительно отличаются от остальных данных. Выбросы могут искажать результаты алгоритмов машинного обучения. Стандартизация может помочь уменьшить влияние выбросов, преобразовав их так, чтобы они были ближе к остальным данным.

Когда использовать стандартизацию

Стандартизацию следует использовать, когда:

  • Характеристики находятся в разных масштабах.
  • Алгоритм машинного обучения чувствителен к масштабу признаков.
  • В данных есть выбросы.

Методы стандартизации

Стандартизация Z-оценки (StandardScaler)

Этот метод преобразует данные так, чтобы они имели нулевое (0) среднее значение и единичную (1) дисперсию. Он вычитает среднее значение из каждой точки данных и делит его на стандартное отклонение.

Формула стандартизации Z-оценки:

  • Z = (X - среднее (X)) / стандартное (X)

Мин-макс масштабирование (MinMaxScaler)

Этот метод масштабирует данные до указанного диапазона, обычно от 0 до 1. Он вычитает минимальное значение и делит на диапазон (максимум-минимум).

Формула для масштабирования Min-Max:

  • X_scaled = (X — мин. (X)) / (макс. (X) — мин. (X))

Надежное масштабирование (RobustScaler)

Этот метод подходит для данных с выбросами. Он масштабирует данные на основе медианы и межквартильного диапазона, делая их более устойчивыми к экстремальным значениям.

Формула надежного масштабирования:

  • X_scaled = (X — медиана (X)) / IQR (X)

где IQR — межквартильный размах.

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

Чтобы проиллюстрировать влияние методов стандартизации, давайте создадим фиктивный набор данных, представляющий добровольные углеродные рынки и компенсацию выбросов углерода. Предположим, что набор данных содержит следующие переменные: «Пенсионные выплаты», «Цена» и «Кредиты».

#Import necessary libraries
import pandas as pd from sklearn.preprocessing import StandardScaler, MinMaxScaler, RobustScaler
#Create a dummy dataset
data = {'Retirements': [100, 200, 150, 250, 300], 
        'Price': [10, 20, 15, 25, 30], 
        'Credits': [5, 10, 7, 12, 15]} 

df = pd.DataFrame(data)
#Display the original dataset
print("Original Dataset:") 
print(df.head())

#Perform Z-score Standardization
scaler = StandardScaler() 
df_standardized = pd.DataFrame(scaler.fit_transform(df), columns=df.columns)

#Display the standardized dataset
print("Standardized Dataset (Z-score Standardization)") 
print(df_standardized.head())

#Perform Min-Max Scaling
scaler = MinMaxScaler() 
df_scaled = pd.DataFrame(scaler.fit_transform(df), columns=df.columns)

#Display the scaled dataset
print("Scaled Dataset (Min-Max Scaling)") 
print(df_scaled.head())

# Perform Robust Scaling
scaler = RobustScaler() 
df_robust = pd.DataFrame(scaler.fit_transform(df), columns=df.columns)

# Display the robustly scaled dataset
print("Robustly Scaled Dataset (Robust Scaling)") 
print(df_robust.head())

Заключение

Стандартизация — это важный шаг в науке о данных, который обеспечивает справедливое сравнение, повышает производительность алгоритмов и улучшает интерпретируемость. С помощью таких методов, как стандартизация Z-показателей, масштабирование минимум-макс и надежное масштабирование, мы можем преобразовывать переменные в стандартную шкалу, обеспечивая надежный анализ и моделирование. Применяя соответствующие методы стандартизации, специалисты по обработке и анализу данных могут раскрыть всю мощь данных и более точно и эффективно извлекать ценную информацию.

Стандартизируя фиктивный набор данных, представляющий добровольные углеродные рынки и компенсацию выбросов углерода, мы можем наблюдать трансформацию и ее влияние на переменные «пенсии», «цена» и «кредиты». Этот процесс позволяет специалистам по данным принимать обоснованные решения и создавать надежные модели, которые стимулируют инициативы в области устойчивого развития и эффективно борются с изменением климата.

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

Удачной стандартизации!