Изучение разделения переменных для прогнозирования с помощью Pandas: методы и примеры кода

При работе с прогнозными моделями важно разделить данные на переменные-предикторы (функции) и целевые переменные (метки). В этой статье мы рассмотрим различные методы выполнения этой задачи с использованием мощной библиотеки Pandas на Python. Мы предоставим примеры кода для каждого метода, чтобы помочь вам реализовать их в своих проектах.

Метод 1: выбор столбца вручную
Один простой подход — вручную выбрать столбцы для предикторных и целевых переменных. Предположим, наш набор данных хранится в DataFrame Pandas под названием data. Фрагмент кода ниже демонстрирует, как выполнить это разделение вручную:

# Manual column selection
predictors = data[['feature1', 'feature2', 'feature3']]
target = data['target']

Метод 2: индексирование
Pandas предоставляет индексатор .iloc, позволяющий разделить DataFrame с помощью числовых индексов. Вот пример:

# Index-based splitting
predictors = data.iloc[:, [0, 1, 2]]  # Assuming the first three columns are predictors
target = data.iloc[:, 3]  # Assuming the fourth column is the target

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

# Filtering by column names
predictor_columns = ['feature1', 'feature2', 'feature3']
predictors = data.filter(items=predictor_columns)
target = data['target']

Метод 4: использование iloc и shape
Этот метод разбивает DataFrame на основе количества столбцов, что может быть полезно, если у вас большой набор данных с известной структурой столбцов:

# Splitting using iloc and shape
num_predictors = 3  # Number of predictor columns
predictors = data.iloc[:, :num_predictors]
target = data.iloc[:, num_predictors:]

Метод 5: использование scikit-learn (sklearn)
Библиотека scikit-learn предоставляет удобную функцию train_test_split, которая разбивает данные на обучающий и проверочный наборы, автоматически разделяя предикторы и целевые значения. переменные. Вот пример:

from sklearn.model_selection import train_test_split
# Splitting using scikit-learn
predictors, target = train_test_split(data, test_size=0.2)  # 80% training, 20% testing

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

Не забудьте тщательно проанализировать данные перед разделением и оценить эффективность моделей с использованием соответствующих показателей оценки.

Следуя этим методам, вы будете хорошо подготовлены к разделению переменных для прогнозного моделирования с использованием Pandas в Python.