小编Boh*_*dar的帖子

为什么权重不会改变 sci-kit 学习包中的 K 均值聚类中心位置?

我正在尝试使用权重选项计算簇的中心位置。但举重似乎不起作用。

这是代表问题的简单脚本

X = []
weights = []
for x in range(-10,10):
    for y in range(-10,10):
        X+= [[x,y]]
        if x>0 and y>0:
            weights += [10000]
        else:
            weights += [1]

X = np.array(X)
weights = np.array(weights)

kmeans = KMeans(n_clusters=1, random_state=0).fit(X,weights)
print kmeans.cluster_centers_
Run Code Online (Sandbox Code Playgroud)

第一季度打印的[[-0.5 -0.5]]权重为10000 。

我预计它大约是(5,5)

EDIT1:尝试将 fit() 调用为:

fit(X,sample_weight=weights)
Run Code Online (Sandbox Code Playgroud)

返回:

TypeError: fit() got an unexpected keyword argument 'sample_weight'
Run Code Online (Sandbox Code Playgroud)

添加第二个变量也没有帮助:

fit(X,None,weights)
Run Code Online (Sandbox Code Playgroud)

返回:

TypeError: fit() takes at most 3 arguments (4 given)
Run Code Online (Sandbox Code Playgroud)

python k-means scikit-learn

5
推荐指数
1
解决办法
1127
查看次数

标签 统计

k-means ×1

python ×1

scikit-learn ×1