问题描述
我正在尝试将ExtraTreesClassifier()
中的sklearn.ensemble
拟合到样本数据集上,但它总是抛出此错误。我已经实现了其他sklearn
模型,它们似乎运行良好。我在这里想念什么?
from sklearn.ensemble import ExtraTreesClassifier
model = ExtraTreesClassifier()
model.fit(X,y)
当我调用ExtraTreesClassifier函数时抛出错误。
这是完整的错误。 这里最好的只是一个包含参数的字典,而df是我用来存储我制作的不同模型的输出的数据框。
---> 97 df.loc[ind,'model']=ExtraTreesClassifier(**best)
98 df.loc[ind,'param']=str(best)
99 Start=time.time()
/usr/local/lib/python3.6/dist-packages/pandas/core/indexing.py in __setitem__(self,key,value)
669 key = com.apply_if_callable(key,self.obj)
670 indexer = self._get_setitem_indexer(key)
--> 671 self._setitem_with_indexer(indexer,value)
672
673 def _validate_key(self,axis: int):
/usr/local/lib/python3.6/dist-packages/pandas/core/indexing.py in _setitem_with_indexer(self,indexer,value)
848 indexer,self.obj.axes
849 )
--> 850 self._setitem_with_indexer(new_indexer,value)
851
852 return self.obj
/usr/local/lib/python3.6/dist-packages/pandas/core/indexing.py in _setitem_with_indexer(self,value)
1008 # we have an equal len list/ndarray
1009 elif _can_do_equal_len(
-> 1010 labels,value,plane_indexer,lplane_indexer,self.obj
1011 ):
1012 setter(labels[0],value)
/usr/local/lib/python3.6/dist-packages/pandas/core/indexing.py in _can_do_equal_len(labels,obj)
2474 True if we have an equal len settable.
2475 """
-> 2476 if not len(labels) == 1 or not np.iterable(value) or is_scalar(plane_indexer[0]):
2477 return False
2478
/usr/local/lib/python3.6/dist-packages/numpy/lib/function_base.py in iterable(y)
281 """
282 try:
--> 283 iter(y)
284 except TypeError:
285 return False
/usr/local/lib/python3.6/dist-packages/sklearn/ensemble/_base.py in __iter__(self)
171 def __iter__(self):
172 """Return iterator over estimators in the ensemble."""
--> 173 return iter(self.estimators_)
174
175
AttributeError: 'ExtraTreesClassifier' object has no attribute 'estimators_'
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)