ImportError: cannot import name choice when importing sklearn.mixture
Question: I am using scikit learn 0.15.0. When I try to import sklearn.mixture I get
ImportError: cannot import name choice

Any ideas?

===================================================================

    
    
    In [1]: **from sklearn import mixture**
    
    ImportError                               Traceback (most recent call last)
    <ipython-input-1-05bc76cab98d> in <module>()
    ----> 1 from sklearn import mixture
    
    /home/f/anaconda/lib/python2.7/site-packages/sklearn/mixture/__init__.py in <module>()
          3 """
          4
    ----> 5 from .gmm import sample_gaussian, log_multivariate_normal_density
          6 from .gmm import GMM, distribute_covar_matrix_to_match_covariance_type
          7 from .gmm import _validate_covars
    
    /home/f/anaconda/lib/python2.7/site-packages/sklearn/mixture/gmm.py in <module>()
         16 from ..utils import check_random_state, deprecated
         17 from ..utils.extmath import logsumexp, pinvh
    ---> 18 from .. import cluster
         19
         20 from sklearn.externals.six.moves import zip
    
    /home/f/anaconda/lib/python2.7/site-packages/sklearn/cluster/__init__.py in <module>()
          4 """
          5
    ----> 6 from .spectral import spectral_clustering, SpectralClustering
          7 from .mean_shift_ import mean_shift, MeanShift, estimate_bandwidth, \
          8     get_bin_seeds
    
    /home/f/anaconda/lib/python2.7/site-packages/sklearn/cluster/spectral.py in <module>()
         16 from ..neighbors import kneighbors_graph
         17 from ..manifold import spectral_embedding
    ---> 18 from .k_means_ import k_means
         19
         20
    
    /home/f/anaconda/lib/python2.7/site-packages/sklearn/cluster/k_means_.py in <module>()
         28 from ..utils import as_float_array
         29 from ..utils import gen_batches
    ---> 30 from ..utils.random import choice
         31 from ..externals.joblib import Parallel
         32 from ..externals.joblib import delayed
    
    ImportError: cannot import name choice
    


Answer: I was getting the same error when I tried to `import KMeans` as : `from
sklearn.cluster import KMeans`

`Error > ImportError: cannot import name choice`

I found the answer here: <https://github.com/scikit-learn/scikit-
learn/issues/3461>

Since I have upgraded to Scikit version 0.15 a few days back, the **older
version of** **random.so was present in** `/usr/local/lib/python2.7/dist-
packages/sklearn/utils`.

I manually deleted it and now I do not get the error anymore.

Hope this helps.

