Python 错误 ValueError: Classification Metrics Can't Handle a Mix of Multiclass and Continuous-Multioutput Targets
当您向函数提供有效参数但它是无效值时,Python 中会引发 ValueError。 例如,当您向数学模块的 sqrt() 函数输入负数时,您将得到 ValueError。
当您在 sklearn.metrics.accuracy_score() 函数中提供无效数组时,会出现错误 ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets。 由于准确度分数是一种分类指标,因此当您将其用于回归问题时也可能会抛出 ValueError。
本篇文章将介绍如何在 Python 中解决此错误。
使用 1d-array 修复 Python 中 ValueError: Classification metrics can't handle mix of multiclass and continuous-multioutput targets
首先,我们将在 Python 中重现此错误。
from sklearn.metrics import accuracy_score
y_pred = [[0.5, 1], [-1, 1], [7, -6]]
y_true = [[0, 2], [-1, 2], [8, -5]]
accuracy_score(y_true, y_pred)
输出:
ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets
函数 accuracy_score()
不支持多类多输出格式。 当函数中给出的输入不是一维数组时,它会在分类模型的评估中显示上述错误。
您可以使用 accuracy_score()
函数中的一维数组来解决它。
修复 Python 中的 ValueError: Classification metrics can't handle mix of multiclass and continuous-multioutput targets 错误
错误的另一个可能原因可能是您正在使用 accuracy_score()
函数来解决回归问题。 准确度分数不是回归模型的度量; 它仅适用于分类模型。
回归指标是 R2 分数、MSE(均方误差)和 RMSE(均方根误差),可用于评估回归模型的性能。
from sklearn.metrics import r2_score
y_pred = [[0.5, 1], [-1, 1], [7, -6]]
y_true = [[0, 2], [-1, 2], [8, -5]]
print(r2_score(y_true, y_pred))
输出:
0.9412391668996365
现在我们知道如何处理 ValueError: Classification metrics can't handle a mix of multiclass and continuous-multioutput targets 错误。 我们希望这些答案对大家有所帮助。
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串