AttributeError:类型对象“sklearn.tree._tree.TreeBuilder”没有属性“__reduce_cython__”

Posted

技术标签:

【中文标题】AttributeError:类型对象“sklearn.tree._tree.TreeBuilder”没有属性“__reduce_cython__”【英文标题】:AttributeError: type object 'sklearn.tree._tree.TreeBuilder' has no attribute '__reduce_cython__' 【发布时间】:2019-08-31 12:08:30 【问题描述】:

我正在使用通过 Anaconda3 安装的 jupyter。我无法导入 DecisionTreeClassifier 并收到以下错误。 Ananconda 中安装的 Python 版本 - 3.7.3。

有人可以帮我吗?

import pandas as pd
from sklearn import tree 

music = pd.read_csv('music.csv')
X = music.drop(columns=['genre'])
y = music['genre']

modl = tree.DecisionTreeClassifier()
modl.fit(X,y)

predictions = modl.predict([[21,1],[22,0]])
predictions

错误信息:

AttributeError Traceback(最近调用 最后)在 1 将熊猫作为 pd 导入 ----> 2 来自 sklearn 导入树 3 4 音乐 = pd.read_csv('music.csv') 5 X = music.drop(columns=['genre'])

~\Anaconda3\lib\site-packages\sklearn\tree__init__.py 在 4""" 5 ----> 6 从 .tree 导入 DecisionTreeClassifier 7 从.tree 导入DecisionTreeRegressor 8 从.tree导入ExtraTreeClassifier

~\Anaconda3\lib\site-packages\sklearn\tree\tree.py 在 38 来自 ..utils.validation 导入 check_is_fitted 39 ---> 40 从 ._criterion 导入标准 41 从 ._splitter 导入拆分器 42 从 ._tree 导入 DepthFirstTreeBuilder

~\Anaconda3\lib\site-packages\sklearn\tree_splitter.pxd 在 init sklearn.tree._criterion()

~\Anaconda3\lib\site-packages\sklearn\tree_tree.pxd in init sklearn.tree._splitter()

sklearn\tree_tree.pyx in init sklearn.tree._tree()

AttributeError: type object 'sklearn.tree._tree.TreeBuilder' 没有 属性'reduce_cython'

【问题讨论】:

【参考方案1】:

我遇到了同样的问题,并尝试解决它。 最后,我发现 anaconda 提示符中的conda update scikit-learn 对我很有用。 here

【讨论】:

以上是关于AttributeError:类型对象“sklearn.tree._tree.TreeBuilder”没有属性“__reduce_cython__”的主要内容,如果未能解决你的问题,请参考以下文章

django - AttributeError:类型对象'file'没有属性'set_user'

AttributeError:类型对象“用户”没有属性“用户名字段”

AttributeError:类型对象“numpy.ndarray”没有属性“__array_function__”

AttributeError:“UUID”对象在使用与后端无关的 GUID 类型时没有属性“replace”

AttributeError:类型对象 x 没有属性 y 以及与 Python 3.4 的其他一些不一致 [关闭]

AttributeError:类型对象“sklearn.tree._tree.TreeBuilder”没有属性“__reduce_cython__”