TypeError: __init __ () получил неожиданный аргумент ключевого слова 'madataset_iter' - PullRequest
0 голосов
/ 06 мая 2020

Мой вопрос касается алгоритма кластеризации K-средних , я все время получаю сообщение об ошибке TypeError: __init__() got an unexpected keyword argument 'madataset_iter' {разобрались после исправления опечатки} когда я пытаюсь визуализировать кластеры после вставки моего набора данных в модель. Ниже моего кода:

##Fitting kmeans to the dataset with k=4
km4=KMeans(n_clusters=4,init='k-means++', max_iter=300, n_init=10, random_state=0)
y_means = km4.fit_predict(dataset)

#Visualizing the clusters for k=4
plt.scatter(dataset[y_means==0,0],dataset[y_means==0,1],s=50, c='purple',label='Cluster1')
plt.scatter(dataset[y_means==1,0],dataset[y_means==1,1],s=50, c='blue',label='Cluster2')
plt.scatter(dataset[y_means==2,0],dataset[y_means==2,1],s=50, c='green',label='Cluster3')
plt.scatter(dataset[y_means==3,0],dataset[y_means==3,1],s=50, c='cyan',label='Cluster4')
plt.scatter(km4.cluster_centers_[:,0], km4.cluster_centers_[:,1],s=200,marker='s', c='red', 
alpha=0.7, label='Centroids')
plt.title('Customer segments')
plt.xlabel('Annual income of customer')
plt.ylabel('Annual spend from customer on site')
plt.legend()
plt.show()

Новая ошибка, которую я получаю:

'TypeError:' (array ([False, False, False, False, False, False, False, False, Ложь, '

Ответы [ 2 ]

0 голосов
/ 06 мая 2020

Предполагая, что вы используете KMeans из sklearn , конструктор этого объекта не принимает аргумент с именем madataset_iter. Другой именованный аргумент, который вы используете, присутствует в документации, на которую я ссылаюсь, поэтому остается неясным, откуда вы взяли это имя аргумента.

0 голосов
/ 06 мая 2020

Сообщение об ошибке означает, что конструктор KMeans __init()__ не имеет аргумента madataset_iter. Есть опечатка? Должен ли он быть metadataset_iter?

В противном случае вам следует проверить документацию или код функции KMeans. В приведенном примере кода нет оператора импорта, поэтому мы не можем его найти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...