python - “KMeans”对象没有属性“cluster_centers_”
问题描述
我正在使用 Jupyter 笔记本,并且编写了以下代码:
from sklearn.datasets import make_blobs
dataset = make_blobs(n_samples=200, centers = 4,n_features = 2, cluster_std = 1.6, random_state = 50)
points = dataset[0];
from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters = 4)
kmeans.fit(points)
plt.scatter(dataset[0][:,0],dataset[0][:,1])
clusters = kmeans.cluster_centers_
// 下面的行给出了错误:'KMeans' object has no attribute 'cluster_centers_'
clusters = kmeans.cluster_centers_
我期待它显示点的平均值或平均值。
解决方案
在您的示例中不清楚您的语句是在您调用之前还是之后fit
。属性在fit
方法中定义。你在之前还是之后调用你的函数fit
?
如果您这样做,则会出现错误:
from sklearn.datasets import make_blobs
import matplotlib.pyplot as plt
dataset = make_blobs(n_samples=200, centers = 4,n_features = 2, cluster_std = 1.6, random_state = 50)
points = dataset[0]
from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters=4)
clusters = kmeans.cluster_centers_
kmeans.fit(points)
plt.scatter(dataset[0][:,0],dataset[0][:,1])
但是这种方式不会产生错误
from sklearn.datasets import make_blobs
import matplotlib.pyplot as plt
dataset = make_blobs(n_samples=200, centers = 4,n_features = 2, cluster_std = 1.6, random_state = 50)
points = dataset[0]
from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters=4)
kmeans.fit(points)
clusters = kmeans.cluster_centers_
plt.scatter(dataset[0][:,0],dataset[0][:,1])
推荐阅读
- bash - How can I write to a specific line range with sed or awk?
- html - Background image full
- python - How to get class labels whith non sequential model?
- python - 你能用 Python 中的函数替换常用的代码行吗?
- javascript - onClick 事件无法执行功能
- gpu - How to deal with inaccuracies of HLSL SampleLevel on Radeon GPUs/Drivers?
- swift - How to write into Photo Library on Mac?
- angular - Right click inspect element on IE11 developer tools always to to top of HTML
- gitlab - Gitlab Runner 作业失败
- android - DatePicker 的 MinDate 有问题吗?