contingency_matrix#
- sklearn.metrics.cluster.contingency_matrix(labels_true, labels_pred, *, eps=None, sparse=False, dtype=<class 'numpy.int64'>)#
构建一个描述标签之间关系的列联矩阵。
- Parameters:
- labels_true类数组,形状为 (n_samples,)
作为参考的地面真实类别标签。
- labels_pred类数组,形状为 (n_samples,)
要评估的聚类标签。
- eps浮点数,默认=None
如果是一个浮点数,该值将添加到列联矩阵中的所有值。这有助于阻止NaN传播。 如果为
None
,则不进行调整。- sparse布尔值,默认=False
如果为
True
,返回一个稀疏的CSR列联矩阵。如果eps
不是None
且sparse
为True
,将引发ValueError。Added in version 0.18.
- dtype数值类型,默认=np.int64
输出数据类型。如果
eps
不是None
,则忽略。Added in version 0.24.
- Returns:
- contingency{类数组,稀疏}, 形状=[n_classes_true, n_classes_pred]
矩阵 \(C\) 使得 \(C_{i, j}\) 是真实类别 \(i\) 和预测类别 \(j\) 中的样本数。如果
eps is None
,该数组的dtype将是整数,除非通过dtype
参数另行设置。如果eps
给出,dtype将是浮点数。 如果sparse=True
,将是sklearn.sparse.csr_matrix
。
Examples
>>> from sklearn.metrics.cluster import contingency_matrix >>> labels_true = [0, 0, 1, 1, 2, 2] >>> labels_pred = [1, 0, 2, 1, 0, 2] >>> contingency_matrix(labels_true, labels_pred) array([[1, 1, 0], [0, 1, 1], [1, 0, 1]])