【问题标题】:K-means on 3D matrix3D 矩阵上的 K 均值
【发布时间】:2019-08-16 19:13:18
【问题描述】:

我目前正在学习 k-means 并想在 3D 矩阵上尝试它,this 是我传递 2D 矩阵的链接。

from sklearn.cluster import KMeans
import numpy as np
X = np.array([[1, 2], [1, 4], [1, 0],
            [10, 2], [10, 4], [10, 0]])
kmeans = KMeans(n_clusters=2, random_state=0).fit(X)
kmeans.labels_
array([1, 1, 1, 0, 0, 0], dtype=int32)
kmeans.predict([[0, 0], [12, 3]])
array([1, 0], dtype=int32)
kmeans.cluster_centers_
array([[10.,  2.],
       [ 1.,  2.]])

但在尝试时却在尝试时

x = [[[10, 20, 30], [40, 50, 60]], [[1, 2, 3], [4, 5, 6]]]
kmeans = KMeans(n_clusters=2, random_state=0).fit(x)

错误为

ValueError: 找到暗淡为 3 的数组。预计估计器

感谢任何我出错的建议。

【问题讨论】:

标签: python machine-learning scikit-learn k-means


【解决方案1】:

如文档中所述,KMeans' fit 方法正在等待:

X :类数组或稀疏矩阵,shape=(n_samples, n_features)

即二维形状的数组,其中每一行是一个样本,列是每个样本的特征。因此它无法处理 3D 数据点。

【讨论】:

    猜你喜欢
    • 2016-08-27
    • 2011-09-16
    • 2017-11-03
    • 2018-12-02
    • 1970-01-01
    • 2013-06-16
    • 2011-03-03
    • 2012-05-06
    • 1970-01-01
    相关资源
    最近更新 更多