为了账号安全,请及时绑定邮箱和手机立即绑定

TypeError: 'numpy.float64' 对象不可调用 - 打印 F1 分数时

TypeError: 'numpy.float64' 对象不可调用 - 打印 F1 分数时

偶然的你 2023-08-08 15:18:57
我正在尝试在 Jupyter Notebook 上运行以下代码:lr = LogisticRegression(class_weight='balanced')lr.fit(X_train,y_train)y_pred = lr.predict(X_train)acc_log = round(lr.score(X_train, y_train) * 100, 2)prec_log = round(precision_score(y_train,y_pred) * 100,2)recall_log = round(recall_score(y_train,y_pred) * 100,2)f1_log = round(f1_score(y_train,y_pred) * 100,2)roc_auc_log = roc_auc_score(y_train,y_pred)当尝试执行此操作时,我收到以下错误:---------------------------------------------------------------------------TypeError                                 Traceback (most recent call last)<ipython-input-46-bcb2d9729eb6> in <module>      6 prec_log = round(precision_score(y_train,y_pred) * 100,2)      7 recall_log = round(recall_score(y_train,y_pred) * 100,2)----> 8 f1_log = round(f1_score(y_train,y_pred) * 100,2)      9 roc_auc_log = roc_auc_score(y_train,y_pred)TypeError: 'numpy.float64' object is not callable似乎无法弄清楚我做错了什么。
查看完整描述

2 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

在您的代码中的某个位置(此处未显示),有一行显示f1_score = ...(书面类型为numpy.float64),因此您将使用f1_score变量覆盖该方法f1_score(该变量不可调用,因此会出现错误消息)。重命名两者之一以解决错误。



查看完整回答
反对 回复 2023-08-08
?
阿晨1998

TA贡献2037条经验 获得超6个赞

在这种情况下使用metrics.f1_score(y_train,y_pred)而不是f1_score(y_train,y_pred)

演示截图

https://img1.sycdn.imooc.com//64d1ec8b0001e5ec06520259.jpg

查看完整回答
反对 回复 2023-08-08
  • 2 回答
  • 0 关注
  • 141 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信