Estoy usando python 2.7 en Ubuntu 14.04. Instalé scikit-learn, numpy y matplotlib con estos comandos:
sudo apt-get install build-essential python-dev python-numpy \ python-numpy-dev python-scipy libatlas-dev g++ python-matplotlib \ ipython
Pero cuando importo estos paquetes:
from sklearn.cross_validation import train_test_split
Me devuelve este error:
ImportError: No module named sklearn.cross_validation
¿Lo que necesito hacer?
Asegúrese de tener Anaconda instalado y luego cree un virtualenv usando conda . Esto asegurará que todas las importaciones funcionen.
Python 2.7.9 |Anaconda 2.2.0 (64-bit)| (default, Mar 9 2015, 16:20:48) [GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux2 Type "help", "copyright", "credits" or "license" for more information. Anaconda is brought to you by Continuum Analytics. Please check out: http://continuum.io/thanks and https://binstar.org >>> from sklearn.cross_validation import train_test_split
debe relacionarse con el cambio de nombre y la eliminación del submódulo model_selection
a model_selection
. Intente sustituir la cross_validation
-> selección de model_selection
train_test_split ahora está en model_selection. Sólo tipo:
from sklearn.model_selection import train_test_split
deberia de funcionar
Puede ser que sea debido a la desaprobación de sklearn.cross_validation. Reemplace sklearn.cross_validation con sklearn.model_selection
Ref- https://github.com/amueller/scipy_2015_sklearn_tutorial/issues/60
Dividir el conjunto de datos en el conjunto de entrenamiento y el conjunto de prueba
from sklearn.model_selection import train_test_split
Pasado: from sklearn.cross_validation
(este paquete está en desuso en la versión 0.18 a partir de la versión 0.20 y se cambia a from sklearn import model_selection
).
Presente: from sklearn import model_selection
Ejemplo 2:
Pasado: from sklearn.cross_validation import cross_val_score
(Versión 0.18 que está en desuso)
Presente: from sklearn.model_selection import cross_val_score
Supongo que la selección cruzada ya no está activa. Deberíamos utilizar en su lugar la selección del modelo. Puedes escribirlo para que se ejecute “desde sklearn.model_selection import train_test_split”
Eso es.