【问题标题】:Silhouette score from k-medoids with gower matrix data来自 k-medoids 的轮廓分数与 gower 矩阵数据
【发布时间】:2021-02-24 10:12:34
【问题描述】:

我尝试使用 for i 子句将轮廓分数计算为 1 到 10 个集群,但在尝试计算轮廓分数时:

data_gower 我得到:ValueError: bad input shape (1, 707)

使用 distArray 我得到:

ValueError: Expected 2D array, got 1D array instead:
array=[0.20401523 0.26294225 0.26405147 ... 0.21941337 0.20577586 0.10499758].
Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample."

我正在使用以下代码:

data_gower = gower.gower_matrix(orig_df_w_707rows_11cols_fwhich_2categorical)
distArray = ssd.squareform(data_gower) 
pam_silh = []
int_med = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]

for i in range(1, 11)  :
    # calculate the model with i
    kmedoids_instance = kmedoids(data_gower, int_med[:i], data_type = 'distance_matrix')
    kmedoids_instance.process()
    clusters = kmedoids_instance.get_clusters()
    medoids = kmedoids_instance.get_medoids()
    # calculate silhouette score and store it for graph 
    silhouette = silhouette_score(**data_gower or disarray**, clusters)
    pam_silh.append(silhouette)

pam_silh

【问题讨论】:

    标签: python matrix


    【解决方案1】:

    对于后代,我设法通过意识到我的集群计算返回一个列表而不是数组来解决这个问题,这对于剪影评分是必需的。通过将 get_clusters 更改为 predict,我能够计算出分数。

    pam_silh = []
    int_med = [582, 5, 605, 50, 100, 434, 156, 189, 270, 502]
    distArray = ssd.squareform(data_gower) 
    
    for i in range(1, 11)  :
        # calculate the model
        kmedoids_instance = kmedoids(data_gower, int_med[:i+1], data_type = 'distance_matrix')
        kmedoids_instance.process()
        clusters_kmedoid = kmedoids_instance.predict(data_gower)
        # calculate silhouette score and store it for graph 
        silhouette = silhouette_score(data_gower, clusters_kmedoid)
        pam_silh.append(silhouette)
    
    pam_silh
    

    【讨论】:

      猜你喜欢
      • 2020-11-23
      • 1970-01-01
      • 2022-06-14
      • 2017-05-12
      • 1970-01-01
      • 2018-11-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多