2017-07-12 4 views
0

Ich versuche SKLearn (Version 0.18.1) wie folgt zu verwenden:SKLearn: Typeerror: __init __() bekam ein unerwartetes Stichwort Argument n_splits

from sklearn.model_selection import KFold 
kfold = KFold(n_splits=5, random_state=100) 

Aber ich habe diesen seltsamen Fehler:

--------------------------------------------------------------------------- 
TypeError         Traceback (most recent call last) 
<ipython-input-17-b8dd4f5596be> in <module>() 
----> 1 kfold = KFold(k=5, random_state=100) 
     2 results = cross_val_score(estimator, X, Y, cv=kfold) 
     3 print("Results: %.2f (%.2f) MSE" % (results.mean(), results.std())) 

TypeError: __init__() got an unexpected keyword argument 'k' 

ich habe die Dokumentation hier konsultiert:

http://scikit-learn.org/stable/modules/generated/sklearn.model_selection.KFold.html

und n_splits sieht aus wie ein Parameter, den ich übergeben könnte ...

Irgendeine Idee, was hier vorgeht/wie zu beheben?

Danke!

+0

Was ist Ihre Version von sklearn? Vielleicht sehen Sie sich die Dokumentation für eine neuere Version als Ihre installierte Version an, Sie könnten einfach zu 'kfold = KFold (k = 5, random_state = 100)' wechseln, was funktionieren sollte – EdChum

Antwort

0

Sie haben ein Problem mit Ihrem Scikit-Learn-Version, versuchen Sie es zu überprüfen und nach rechts Dokumentation (here):

import sklearn 
print(sklearn.__version__) 

Oder die neueste Version mit pip install -U scikit-learn herunterladen.

2

Öffnen Sie Ihr Terminal (cmd) und versuchen Sie diese, bevor Sie versuchen, das Sklearn zu importieren.

pip install -U scikit-learn 

oder wenn Sie Anaconda installiert

conda install scikit-learn 

oder

conda update conda 
conda update scikit-learn 

Auch stellen Sie sicher, dass Sie waren numpy und scipy:

pip install numpy 
pip install scipy 

Starten Sie den Python-Shell nach der Installation scipy!

+0

Für conda 'conda update conda' und dann' conda update scikit-learn' funktioniert. – fdelia

+1

Ich habe meine Antwort einschließlich dieser geändert – sera

Verwandte Themen