TypeError: KMeans.__init__() got an unexpected keyword argument 'n_cluster'
时间: 2023-12-07 14:03:58 浏览: 221
这个错误是因为KMeans类的构造函数中没有n_cluster参数。正确的参数是n_clusters。下面是一个演示如何使用正确的参数来创建KMeans对象的例子:
from sklearn.cluster import KMeans
# 创建KMeans对象
kmeans = KMeans(n_clusters=3, random_state=0)
# 对数据进行聚类
kmeans.fit(X)
相关问题
TypeError: KMeans.__init__() got an unexpected keyword argument n_jobs
非常抱歉,我的回答还是有误。在sklearn.cluster
中的KMeans
类确实没有n_jobs
参数。如果你想要设置并行计算的数量,可以使用joblib
库中的Parallel
和delayed
函数来实现并行化计算。具体的代码如下:
from sklearn.cluster import KMeans
from joblib import Parallel, delayed
kmodel = KMeans(n_clusters=k)
# 将fit方法并行化
Parallel(n_jobs=1, backend='multiprocessing')(delayed(kmodel.fit)(data) for data in data_list)
这里使用Parallel
函数将fit
方法并行化,n_jobs
参数指定了并行计算任务数量,delayed
函数用于将fit
方法封装成一个可调用的函数,并对数据列表中的每个数据调用一次fit
方法。
希望这次回答能够解决你的问题,如有疑问,请随时提出。
TypeError: KMeans.__init__() got an unexpected keyword argument 'n_jobs'
这个错误通常是因为你正在使用的 sklearn
版本太旧了, n_jobs
参数在旧版本中可能不存在。你可以尝试更新你的 sklearn
版本。执行以下命令可以更新 sklearn
:
pip install -U scikit-learn
如果你已经安装了 scikit-learn
,则可以使用以下命令更新:
pip install --upgrade scikit-learn
相关推荐
















