用matlab写一段随机森林的代码
时间: 2023-06-15 14:04:47 浏览: 130
随机森林应用于分类问题代码.rar
5星 · 资源好评率100%
下面是一个简单的 Matlab 随机森林示例代码:
```matlab
% 加载数据
data = load('data.mat');
X = data.X;
y = data.y;
% 拆分数据集
cv = cvpartition(length(y),'HoldOut',0.3);
idx = cv.test;
X_train = X(~idx,:);
y_train = y(~idx,:);
X_test = X(idx,:);
y_test = y(idx,:);
% 随机森林模型
nTrees = 100;
B = TreeBagger(nTrees,X_train,y_train,'OOBPrediction','On','Method','classification');
% 特征重要性
importance = B.OOBPermutedVarDeltaError;
% 预测测试集
y_pred = str2num(cell2mat(B.predict(X_test)));
% 模型评估
accuracy = sum(y_pred==y_test)/length(y_test);
```
该代码加载数据,将其拆分为训练集和测试集,使用 `TreeBagger` 函数来训练随机森林模型,然后计算特征重要性并使用模型对测试集进行预测。最后,将预测结果与真实标签比较以计算准确度。
阅读全文