随机森林代码python
时间: 2023-12-19 16:32:38 浏览: 89
随机森林是一种集成学习方法,它通过构建多个决策树并将它们的预测结果进行投票来得到最终的预测结果。在Python中,可以使用scikit-learn库中的RandomForestClassifier或RandomForestRegressor类来实现随机森林。
以下是一个使用随机森林进行分类的示例代码:
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score
# 加载数据集
iris = load_iris()
X = iris.data
y = iris.target
# 将数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 创建随机森林分类器
clf = RandomForestClassifier(n_estimators=100, random_state=42)
# 训练模型
clf.fit(X_train, y_train)
# 预测测试集
y_pred = clf.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)
```
以下是一个使用随机森林进行回归的示例代码:
```python
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestRegressor
from sklearn.metrics import mean_squared_error
# 加载数据集
boston = load_boston()
X = boston.data
y = boston.target
# 将数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 创建随机森林回归器
reg = RandomForestRegressor(n_estimators=100, random_state=42)
# 训练模型
reg.fit(X_train, y_train)
# 预测测试集
y_pred = reg.predict(X_test)
# 计算均方误差
mse = mean_squared_error(y_test, y_pred)
print("Mean Squared Error:", mse)
```
这些代码示例展示了如何使用scikit-learn库中的RandomForestClassifier和RandomForestRegressor类来创建随机森林模型并进行训练和预测。
阅读全文