导入数据后用随机森林10折交叉验证,最优超参数获得预测准确性python
时间: 2024-04-30 21:22:52 浏览: 83
python 随机森林算法及其优化详解
以下是一个示例代码,其中使用sklearn库中的RandomForestClassifier和GridSearchCV来执行随机森林10折交叉验证,并得到最优超参数和预测准确性。
```python
import pandas as pd
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import GridSearchCV
# 读取数据
data = pd.read_csv('data.csv')
# 分离特征和标签
X = data.drop('label', axis=1)
y = data['label']
# 定义随机森林分类器
rfc = RandomForestClassifier()
# 定义超参数搜索范围
param_grid = {
'n_estimators': [50, 100, 200],
'max_depth': [3, 5, 7]
}
# 执行网格搜索交叉验证
grid = GridSearchCV(estimator=rfc, param_grid=param_grid, cv=10)
grid.fit(X, y)
# 输出最优超参数和预测准确性
print('Best parameters:', grid.best_params_)
print('Accuracy:', grid.best_score_)
```
在上面的代码中,我们首先读取了数据,然后分离出特征和标签。接着定义了一个随机森林分类器,并定义了超参数搜索范围。然后我们使用GridSearchCV执行网格搜索交叉验证,并输出最优超参数和预测准确性。
注意,这只是一个示例代码,实际应用中需要根据具体情况进行调整。
阅读全文