我试着在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
似乎找不出我做错了什么。
发布于 2020-09-14 19:50:25
在您的代码中的某处(此处未显示),有一行代码显示为f1_score = ...
(编写的类型为numpy.float64
),因此您使用变量f1_score
(该变量不可调用,因此出现错误消息)覆盖了f1_score
方法。重命名其中一个以解决错误。
https://stackoverflow.com/questions/63883654
复制相似问题