我正在使用决策树,并且引发了该错误。当我使用反向传播时,出现了相同的情况。我该如何解决? (对不起,我的英语不好)
import pandas as pd
import numpy as np
a = np.test()
f = open('E:/lgdata.csv')
data = pd.read_csv(f,index_col = 'id')
x = data.iloc[:,10:12].as_matrix().astype(int)
y = data.iloc[:,9].as_matrix().astype(int)
from sklearn.tree import DecisionTreeClassifier as DTC
dtc = DTC(criterion='entropy')
dtc.fit(x,y)
x=pd.DataFrame(x)
from sklearn.tree import export_graphviz
with open('tree.dot','w') as f1:
f1 = export_graphviz(dtc, feature_names = x.columns, out_file = f1)
追踪(最近通话):中第1行的文件“
”运行文件运行文件中的文件“ C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ spyder \ utils \ site \ sitecustomize.py”,第710行execfile(文件名,命名空间)execfile中的文件“ C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ spyder \ utils \ site \ sitecustomize.py”,第101行exec(编译(f.read(),文件名,'exec'),名称空间)中第9行的文件“ C:/ProgramData/Anaconda3/lib/site-packages/scipy/_lib/_numpy_compat.py”从numpy.testing.nosetester import import_nose ModuleNotFoundError:没有名为“ numpy.testing.nosetester”的模块]
这是由于numpy
和scipy
之间的版本不兼容而发生的。 numpy
的最新版本已弃用numpy.testing.nosetester
。
pip install numpy==1.18 # > 1.18
pip install scipy<=0.19.0 # <= 0.19
和
from sklearn.tree import DecisionTreeClassifier as DTC
触发错误。
将scipy
升级到更高版本。
pip install numpy==1.18
pip install scipy==1.1.0
pip install scikit-learn==0.21.3
但不限于此。通过将上述库升级到最新的稳定版,您应该可以摆脱此错误。