Logistic 回归模型 - 预测和 ROC AUC

问题描述 投票:0回答:1

我正在使用 statsmodels (statsmodels.api) 构建逻辑回归,并且想了解如何获取测试数据集的预测。这是我到目前为止所拥有的:

x_train_data, x_test_data, y_train_data, y_test_data = train_test_split(X, df[target_var], test_size=0.3)

logit = sm.Logit(
     y_train_data, 
     x_train_data
)

result = logit.fit()
result.summary()

打印下面 y_train_data 和 y_test_data 的预测的最佳方法是什么?我不确定在这种情况下要使用或导入哪些回归指标:

in_sample_pred = result.predict(x_train_data)
out_sample_pred = result.predict(x_test_data)

此外,计算 ROC AUC 分数并为该 Logistic 回归模型绘制它的最佳方法是什么(通过 scikit-learn 包)?

谢谢

python scikit-learn logistic-regression prediction roc
1个回答
0
投票

要根据您的 x_test_data 进行预测,您所要做的就是:

x_test_predicted = result.predict(x_test_data)

print(x_test_predicted)

我想如果您想很好地掌握预测,您可以查看数据框:

import pandas as pd 

df_test_predictions = pd.DataFrame({
    'x_test_predicted': x_test_predicted, 
    'y_test': y_test_data 
    })

然后要计算ROC-AUC,你可以这样做:

from sklearn.metrics import roc_auc_score

score = roc_auc_score(y_test_data, x_test_predicted)
print(score)
© www.soinside.com 2019 - 2024. All rights reserved.