TypeError:“numpy.float64”对象不可调用 - 打印 F1 分数时
Posted
技术标签:
【中文标题】TypeError:“numpy.float64”对象不可调用 - 打印 F1 分数时【英文标题】:TypeError: 'numpy.float64' object is not callable - While Printing F1 Score 【发布时间】:2021-01-01 03:17:23 【问题描述】:我正在尝试在 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
似乎无法弄清楚我做错了什么。
【问题讨论】:
【参考方案1】:在您的代码中的某处(此处未显示),有一行写着f1_score = ...
(写入类型为numpy.float64
),因此您将使用变量f1_score
覆盖方法f1_score
(其中不可调用,因此出现错误消息)。重命名两者之一以解决错误。
【讨论】:
这似乎正是问题所在。删除该代码并重新启动内核并再次运行。工作。以上是关于TypeError:“numpy.float64”对象不可调用 - 打印 F1 分数时的主要内容,如果未能解决你的问题,请参考以下文章
ErlangC 函数应用程序错误 - TypeError: 'numpy.float64' object is not iterable
TypeError:“numpy.float64”对象不可调用 - 打印 F1 分数时
极坐标图:TypeError:“numpy.float64”对象不能被解释为索引
TypeError:'numpy.float64'对象不可调用,为什么?