【问题标题】:k means clustering on matrixk 表示在矩阵上聚类
【发布时间】:2017-11-10 04:18:38
【问题描述】:

我正在尝试使用“kmeans”算法对多维功能对象进行聚类。这是什么意思:所以我不再有每行或每个个体的向量,甚至每个个体都有一个 3x3 观察矩阵。例如:个体 = 1 具有以下观察结果:

(x1, x2, x3),(y1,y2,y3),(z1,z2,z3)。

对于其他个体也给出了相同的观察结构。那么您知道我如何使用包括所有 3 个观察向量的“kmeans”进行聚类——而不仅仅是一个观察向量,它是如何正常用于“kmeans”聚类的? 你会为每个观察向量做吗? (x1,x2,x3),分别然后以某种方式将信息组合在一起?我想用 R 中的kmeans() 函数来做到这一点。

非常感谢您的回答!

【问题讨论】:

    标签: r multidimensional-array k-means


    【解决方案1】:

    只需将参数提供给 kmeans() 的所有三列,它就会计算 3 维的距离,如果那是您正在寻找的。​​p>

    【讨论】:

      【解决方案2】:

      使用 k-means,您可以将每个观测值解释为 N 维向量空间中的一个点。然后你最小化你的观察和聚类中心之间的距离。

      由于数据被视为 N 维空间中的点,因此值的实际排列无关紧要。

      因此,您可以告诉您的 k-means 例程使用矩阵范数(例如 Frobenius norm)来计算距离。另一种方法是将您的观察结果从 3 x 3 矩阵扁平化为 1 x 9 向量。 NxN 矩阵的 Frobenius 范数等价于 1xN^2 向量的欧几里德范数。

      【讨论】:

        猜你喜欢
        • 2014-01-22
        • 2016-08-27
        • 1970-01-01
        • 2016-08-12
        • 2016-09-06
        • 2013-11-23
        • 1970-01-01
        • 2021-11-27
        相关资源
        最近更新 更多