Python NameError:未为dbscan定义名称“labels\u true”
我正在使用模板脚本并尝试输入数据。然而,我不确定labels_true意味着什么,因为错误声明它是未定义的 这是我的数据数组:Python NameError:未为dbscan定义名称“labels\u true”,python,machine-learning,scikit-learn,cluster-analysis,dbscan,Python,Machine Learning,Scikit Learn,Cluster Analysis,Dbscan,我正在使用模板脚本并尝试输入数据。然而,我不确定labels_true意味着什么,因为错误声明它是未定义的 这是我的数据数组: data=array([[5.71585827e+00, 3.32320000e+04], [0.00000000e+00, 0.00000000e+00], [0.00000000e+00, 0.00000000e+00], ..., [9.57746479e-02, 3.40000000e+01],
data=array([[5.71585827e+00, 3.32320000e+04],
[0.00000000e+00, 0.00000000e+00],
[0.00000000e+00, 0.00000000e+00],
...,
[9.57746479e-02, 3.40000000e+01],
[7.01388889e-01, 1.01000000e+02],
[9.70350404e-02, 3.60000000e+01]])
现在我正在应用这个脚本:
import numpy as np
from sklearn.cluster import DBSCAN
from sklearn import metrics
from sklearn.preprocessing import StandardScaler
# #############################################################################
X=data
X = StandardScaler().fit_transform(X)
# #############################################################################
# Compute DBSCAN
db = DBSCAN(eps=0.3, min_samples=10).fit(X)
labels = db.labels_
print("Homogeneity: %0.3f" % metrics.homogeneity_score(labels_true, labels))
NameError: name 'labels_true' is not defined
从on scikit中,增加了学习同质性的重点:
给定基本真值的簇标记的齐性度量
这里的标签是真的
用作参考的地面真值类别标签
所以,如果你已经有了基本事实,那就是labels\u true参数,它将与你预测的标签进行比较,得到分数
这里的错误显然是因为您没有在labels_true中提供这样的基本事实,并且变量没有定义,正如错误所说的那样
其直接后果是,如果无法获得基本事实,则无法使用度量