【问题标题】:'list' object is not callable with silhouette_score'list' 对象不能用 silhouette_score 调用
【发布时间】:2020-08-09 19:55:00
【问题描述】:
kmeans = KMeans(n_clusters = k).fit(df)
preds = kmeans.fit_predict(df)
silhouette_score.append(silhouette_score(df, preds, metric = 'euclidean'))

TypeError: 'list' 对象不可调用

我不知道为什么

【问题讨论】:

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


    【解决方案1】:

    您可能在代码中的某处创建了一个名为silhouette_score 的列表变量,您现在尝试附加该变量。这样,您已经覆盖了现有的 scikit-learn 方法 silhouette_score,因此您的脚本现在找不到它,将 silhouette_score 视为一个列表,并且在尝试执行时

    silhouette_score(df, preds, metric = 'euclidean')
    

    按预期抛出错误,因为列表确实不可调用。

    您应该切勿创建名称与现有函数和方法相同的变量。将您的 silhouette_score 变量的名称更改为其他名称,重置并重新运行您的脚本,您应该会没事的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-30
      • 2016-10-01
      • 2013-09-16
      • 1970-01-01
      • 1970-01-01
      • 2015-09-14
      • 2012-04-21
      • 2021-08-26
      相关资源
      最近更新 更多