title: 'KMeans' object has no attribute 'labels_'
body: <p>I my code i am using sklearn kMeans algorithm. when i execute the code i got the error like "<strong>'KMeans' object has no attribute 'labels_'</strong>"</p>
  
  <pre><code>Traceback (most recent call last):
   File ".\kmeans.py", line 56, in &lt;module&gt;
     np.unique(km.labels_, return_counts=True)
  AttributeError: 'KMeans' object has no attribute 'labels_'
  </code></pre>
  
  <p>Here is my code :</p>
  
  <pre><code>import pandas as pds
  import nltk,re,string
  from nltk.probability import FreqDist
  from collections import defaultdict
  from nltk.tokenize import sent_tokenize, word_tokenize, RegexpTokenizer
  from nltk.tokenize.punkt import PunktSentenceTokenizer
  from nltk.corpus import stopwords
  from string import punctuation
  from heapq import nlargest
  # import and instantiate CountVectorizer
  from sklearn.feature_extraction.text import CountVectorizer
  vect = CountVectorizer()    
  from sklearn.feature_extraction.text import TfidfVectorizer
  vectorizer = TfidfVectorizer(ngram_range=(1,2),max_df=0.5, min_df=2,stop_words='english')
  train_X = vectorizer.fit_transform(x)  
  
  from sklearn.cluster import KMeans
  import sklearn.cluster.k_means_
  km = KMeans(n_clusters=3, init='k-means++', max_iter=100, n_init=1, 
    verbose=True)
  
  import numpy as np
  np.unique(km.labels_, return_counts=True)
  
  text = {}
  for i,cluster in enumerate(km.labels_):
      oneDocument = X[i]     
      if cluster not in text.keys():
          text[cluster] = oneDocument
      else:
          text[cluster] += oneDocument        
  
  _stopwords = set(stopwords.words('english')+ list(punctuation))
  
  keywords = {}
  counts = {}
  
  for cluster in range(3):
      word_sent =  word_tokenize(text[cluster].lower())
      word_sent = [word for word in word_sent if word not in _stopwords]
      freq = FreqDist(word_sent)
      keywords[cluster] =  nlargest(100, freq, key=freq.get)
      counts[cluster] = freq
  
  unique_keys={}
  for cluster in range(3):
      other_clusters = list(set(range(3))-set([cluster]))
      keys_other_clusters = 
      set(keywords[other_clusters[0]]).union(set(keywords[other_clusters[1]]))
      unique=set(keywords[cluster])-keys_other_clusters
      unique_keys[cluster]= nlargest(100, unique, key=counts[cluster].get)
  
  #print(unique_keys)
  print(keywords)
  </code></pre>
  
  <p>To get keywords cluster. I have tried to resolve this issues.. But i don't know where i am lacking..</p>