【问题标题】:could not broadcast input array from shape (100,2) into shape (100)无法将输入数组从形状 (100,2) 广播到形状 (100)
【发布时间】:2021-07-06 12:09:35
【问题描述】:

我想解决这个问题....我完全是初学者

"无法将输入数组从形状 (100,2) 广播到形状 (100)"

    from sklearn.cluster import KMeans
    
    iris = datasets.load_iris()
    X_iris = iris.data
    y_iris = iris.target
    
    k_means= cluster.KMeans(n_clusters = 3)
    k_means.fit(X_iris)
    print(k_means.labels_[::10])
    print(y_iris[::10]
    df = make_blobs()
    from sklearn import metrics
    
    n_clusters = [2, 3, 4, 5, 6, 7, 8]
    for k in n_clusters:
        kmeans = KMeans(n_clusters = k, random_state = 42).fit(df)
        cluster_labels = kmeans.predict(df)
        S = metrics.silhouette_score(df, cluster_labels)
        print("n_clusters = {:d}, silhouette score {:1f}".format(k, S))

【问题讨论】:

    标签: python data-mining


    【解决方案1】:

    您缺少该代码 sn-p 的括号第 10 行。

        from sklearn.cluster import KMeans
        
        iris = datasets.load_iris()
        X_iris = iris.data
        y_iris = iris.target
        
        k_means= cluster.KMeans(n_clusters = 3)
        k_means.fit(X_iris)
        print(k_means.labels_[::10])
        print(y_iris[::10]) #MISSING A PARENTHESES
        df = make_blobs()
        from sklearn import metrics
        
        n_clusters = [2, 3, 4, 5, 6, 7, 8]
        for k in n_clusters:
            kmeans = KMeans(n_clusters = k, random_state = 42).fit(df)
            cluster_labels = kmeans.predict(df)
            S = metrics.silhouette_score(df, cluster_labels)
            print("n_clusters = {:d}, silhouette score {:1f}".format(k, S))
    

    【讨论】:

      猜你喜欢
      • 2018-09-25
      • 2020-10-06
      • 2020-11-23
      • 2021-08-13
      • 2021-01-20
      • 2018-05-19
      • 2021-12-25
      • 2018-05-23
      • 1970-01-01
      相关资源
      最近更新 更多