Сначала создается основная модель (как обычно с использованием обучающей выборки в файле train_data.csv)
import pandas as pd
from sklearn.tree import DecisionTreeClassifier
df = pd.read_csv('/datasets/train_data.csv')
Если необходимо делаем преобразование задачи регрессии в задачу классификации (вместо 10 можно подставить нужное число)
df.loc[df['col5'] > 10, 'target_col'] = 1
df.loc[df['col5'] <= 10, 'target_col'] = 0
Сохраняем признак в переменной features, а целевой признак — в target.
features = df.drop(['col5', 'target_col'], axis=1)
target = df['target_col']
model = DecisionTreeClassifier(random_state=12345)
model.fit(features, target)
Теперь создаем контрольную тестовую выборку из трех строк и сохраняем её в control_df
control_df = pd.read_csv('/datasets/control_data.csv').head(3)
control_df.loc[control_df['col5'] > 10, 'target_col'] = 1
control_df.loc[control_df['col5'] <= 10, 'target_col'] = 0
control_target = control_df['target_col']
control_features = control_df.drop(['col5','target_col'], axis=1)
Модель не создаем заново, иначе мы перезапишем обученную модель пустышкой.
Сразу делаем предсказание.
control_target_predictions = model.predict(control_features)
print('Предсказания по тестовой выборке:', control_target_predictions)
print('Правильные ответы по обучающей выборке:', control_target.values)