考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

你是一家银行的数据分析师,你的任务是使用现有的客户数据(data)来预测客户是否会违约。数据集data包括以下变量:年龄(Age)、收入(Income)、信用评分(Credit Score)、负债(Debt)和是否违约(Default)。根据以上任务完成以下问题。 假设基于给定数据建立了逻辑回归模型model,data基于模型的预测概率的结果为p,以0.5作为判断阈值得到了预测标签Y_hat,则下列使用sklearn中的classification_report输出分类报告的方法正确的是()
A. classification_report(data[‘是否违约’], p)
B. classification_report(p, data[‘是否违约’])
C. classification_report(data[‘是否违约’], Y_hat)
D. classification_report(Y_hat, data[‘是否违约’])
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

使用sklearn中的classification_report输出分类报告时,横坐标应为数据的真实标签,纵坐标为数据的预测标签,故选C。

正确答案是C: `classification_report(data['是否违约'], Y_hat)`

**专业分析:**

在使用 `sklearn` 中的 `classification_report` 函数时,函数的参数需要传入真实标签和预测标签。具体来说:

1. `data['是否违约']` 是数据集中客户是否违约的真实标签。
2. `Y_hat` 是基于逻辑回归模型 `model` 和判断阈值 0.5 得到的预测标签。

`classification_report` 的作用是生成分类任务的主要指标,包括精确率(precision)、召回率(recall)、F1-score 等,用来评估分类模型的性能。因此,正确的调用方式是将真实标签和预测标签传入 `classification_report` 函数。

分析各个选项:

A: `classification_report(data['是否违约'], p)` - 错误。`p` 是预测的概率值,而不是标签。`classification_report` 需要的是标签而不是概率。

B: `classification_report(p, data['是否违约'])` - 错误。同样地,`p` 是概率值,不是标签。

C: `classification_report(data['是否违约'], Y_hat)` - 正确。`data['是否违约']` 是真实标签,`Y_hat` 是预测标签。

D: `classification_report(Y_hat, data['是否违约'])` - 错误。参数顺序不对,`classification_report` 的第一个参数应为真实标签,第二个参数应为预测标签。

因此,正确答案是C。