Логистическая регрессия - Как использовать модель на другом наборе данных и получить значения вероятности - PullRequest
0 голосов
/ 19 октября 2019

Я делаю свою первую модель ML и мне нужна помощь с использованием модели во втором наборе данных.

Итак, у меня есть два набора: "train_full.csv" и "test_full.csv". Оба набора имеют одинаковую структуру.

Единственное отличие состоит в том, что в столбце "train_full.csv" "target" заполнен нулями и 1-ю, а в "test_set.csv" этот столбец пуст, и я хочу предсказатьэти значения.

Ниже вы можете найти мою модель, основанную на "train_full.csv". Я пропустил всю часть очистки данных для ясности кода:

df2 = pd.read_csv("train_full.csv", sep = ';')
test_set = pd.read_csv("test_full.csv", sep = ';')
#Dataset cleaning

#my y is column named "target", and my x's are the remaining column

X_train, X_test, y_train, y_test = train_test_split(df2.drop('target',axis=1), 
           df2['target'], test_size=0.35, 
            random_state=101)

#Creating Logistic Regression Model

logmodel = LogisticRegression()
result = logmodel.fit(X_train, y_train)

#Making predictions
Predictions = logmodel.predict(X_test)

print(metrics.confusion_matrix(y_test, Predictions))

print(metrics.classification_report(y_test,Predictions)) #Accuracy: 78%

auc = metrics.roc_auc_score(y_test, y_pred_proba) #AUC: ~0.695

Теперь я хочу использовать эту модель для второго набора данных, который я импортировал во второй строке кода, однако мне это не нужноразделить набор данных на подмножество обучения и тестирования. Я хочу использовать модель сверху для всего набора "test_full.csv". Как я могу это сделать?

Кроме того, есть ли способ добавить столбец с вычисленной вероятностью? Таким образом, мой вывод будет padas dataframe, который будет выглядеть следующим образом:

Id probability target
0 0.75 1
1 0.78 1
2 0.34 0
3 0.84 1
4 0.13 0
5 0.34 0

С уважением

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...