MATLAB 两组数据怎么实现随机森林预测,举例代码
时间: 2024-09-24 13:30:25 浏览: 33
在MATLAB中,你可以使用`TreeBagger`函数来构建随机森林模型,它适用于分类和回归任务。如果你有两组数据,通常是一组特征(输入变量)X和一组目标变量Y,下面是一个简单的例子:
```matlab
% 假设你的数据已经存储在表格data里
% 'features'是你的特征列名,'target'是目标变量列名
data = readtable('your_dataset.xlsx'); % 替换为你的数据文件名
X = table2array(data(:, 'features')); % 输入特征矩阵
Y = table2array(data(:, 'target')); % 目标变量向量
% 确保数据已经被适当地预处理和编码(如有类别变量)
% 设置随机森林参数,如树的数量
numTrees = 100;
options = statset('CVPartition', 'holdout', 'HoldOut', 0.3); % 30%作为测试集
% 构建随机森林模型
model = TreeBagger(numTrees, X, Y, options);
% 训练模型
[~, ~, trainingLoss] = train(model, X, Y);
% 对测试集进行预测
testIdx = cvpartition(size(Y, 1), 'HoldOut', 0.3);
XTest = X(testIdx.test,:);
YTest = Y(testIdx.test,:);
YPred = predict(model, XTest);
% 统计预测结果
accuracy = sum(YPred == YTest) / numel(YTest);
% 打印一些统计信息
disp(['Training Loss: ', num2str(trainingLoss)]);
disp(['Prediction Accuracy: ', num2str(accuracy)]);
%
阅读全文