Python 使用GridSearchCV时出现类型错误?
我正在尝试使用Python 使用GridSearchCV时出现类型错误?,python,pandas,scikit-learn,Python,Pandas,Scikit Learn,我正在尝试使用GridSearchCV调整RandomForestClassifier的n_估计量。但是我得到的类型错误是->TypeError:get_params()缺少一个必需的位置参数:“self” 代码: 从sklearn.grid\u搜索导入GridSearchCV 从sklearn.employ导入随机林分类器 n_树=列表(范围(10110,10)) 打印(n_树) [10, 20, 30, 40, 50, 60, 70, 80, 90, 100] 参数网格=dict(n_估计量
GridSearchCV
调整RandomForestClassifier
的n_估计量。但是我得到的类型错误是->TypeError:get_params()缺少一个必需的位置参数:“self”
代码:
从sklearn.grid\u搜索导入GridSearchCV
从sklearn.employ导入随机林分类器
n_树=列表(范围(10110,10))
打印(n_树)
[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
参数网格=dict(n_估计量=n_树)
打印(参数网格)
{'n_估计数':[10,20,30,40,50,60,70,80,90,100]}
grid=GridSearchCV(RandomForestClassifier,参数网格,cv=5,评分='roc_auc')
grid.fit(X,y)在grid=GridSearchCV(RandomForestClassifier,param_grid,cv=5,scoring='roc_auc')
行中,而不是您编写的内容,尝试一下
grid=GridSearchCV(RandomForestClassifier(),param_grid,cv=5,scoring='roc_auc')
我不能肯定。。因为你没有给我X
和y
,或者我可以在我的笔记本电脑上复制它,让你知道它是否有效
让我知道它是否有效 你试过我的解决方案吗?你需要传递分类器而不是基类作为估计器。因此,将()
添加到基类,即RandomForestClassifier()
我将在5分钟后通知您,因为现在网格.fit(X,y)
正在运行,需要时间:)
from sklearn.grid_search import GridSearchCV
from sklearn.ensemble import RandomForestClassifier
n_trees = list(range(10,110,10))
print(n_trees)
[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
param_grid = dict(n_estimators=n_trees)
print(param_grid)
{'n_estimators': [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]}
grid = GridSearchCV(RandomForestClassifier, param_grid, cv=5, scoring='roc_auc')
grid.fit(X,y) <--- Getting error at this cell