首页 > 解决方案 > 如何在多维数据上显示 K 均值聚类的输出?

问题描述

我正在开发一个代码来创建基于产品在 2018 年的移动(2018 年 1 月,2018 年 1 月,...)

实例将是每月的移动,因此数据将具有 12 个维度。示例:产品 x 在 1 月 3 次、2 月 2 次、3 月 4 次、4 月 2 次、5 月 3 日、6 月 4 日、7 月 7 日、8 月 10 日、10 月 3 日、11 月 8 日和 12 月 10 次。所以那个点将是 (3, 2, 4, 2, 3, 4, 7, 10, 3, 8, 10)。问题是:在我的代码中,我不知道如何使用超过 2 个变量:

    from scipy.cluster.vq import kmeans, vq
        from matplotlib import pyplot as plt
        import seaborn as sns
        import pandas as pnd

        import random 
        random.seed ((1000,2000))

#the movement data will be inserted below
        m1 = []
        m2 = []
        m3 = []
        m4 = []
        m5 = []
        m6 = []
        m7 = []
        m8 = []
        m9 = []
        m10 = []
        m11 = []
        m12 = []

        df = pd.Dataframe({'january': m1, 'february': m2, 'march': m3, 'april': m4, 'may': m5, 'june': m6, 'july': m7, 'august': m8, 'september': m9, 'october': m10, 'november': m11, 'december': m12})

        centroids,_ = Kmeans(df, 3)
        df['cluster_labels'],_= vq(df, centroids)

        sns.scatterplot(m1 = 'january', m2 = 'february', m3 = 'march', m4 = 'april', m5 = 'may', m6 = 'june', m7 = 'july', m8 = 'august', m9 = 'september', m10 = 'october', m11 = 'november', m12 = 'december', hue
    = 'cluster_labels', data = df)

        plt.show()

有什么方法可以在这段代码中使用 12 维吗?如果没有,我该怎么办?帮帮我,朋友

标签: pythoncluster-analysisk-means

解决方案


那么,您通常如何可视化这些数据?

可能带有 12 列的折线图。

您可以对 k-means 聚类中心执行相同的操作。


推荐阅读