clc;clear;
% data 是你的数据集,第一列是自变量X,第二列是因变量Y
data = xlsread('data.xlsx');
% 分离自变量 X 和因变量 Y
X = data(:, 1);
Y = data(:, 2);
% 计算训练集和测试集的大小
numTotal = size(data, 1);
numTrain = floor(numTotal * 0.7);
numTest = numTotal - numTrain;
% 随机打乱数据
randIndices = randperm(numTotal);
X = X(randIndices);
Y = Y(randIndices);
% 分割数据集
Xtrain = X(1:numTrain);
Ytrain = Y(1:numTrain);
Xtest = X(numTrain+1:end);
Ytest = Y(numTrain+1:end);
% 使用 fitrsvm 训练 SVM 回归模型
SVMModel = fitrsvm(Xtrain, Ytrain, 'Standardize', true, 'KernelFunction', 'gaussian');
% 使用训练好的模型对测试集进行预测
Ypred = predict(SVMModel, Xtest);
% 计算预测的准确性
mse = mean((Ypred - Ytest).^2); % 均方误差
rmse = sqrt(mse); % 均方根误差
% 显示结果
fprintf('测试集的 RMSE: %.4f\n', rmse);
% 可选:绘制实际值与预测值
figure;
plot(Xtest, Ytest, 'bo', Xtest, Ypred, 'r*');
legend('实际值', '预测值', 'Location', 'Best');
title('SVM 回归分析');
xlabel('X');
ylabel('Y');
grid on;
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
svm.zip (2个子文件)
svmhuigui.m 1KB
data.xlsx 16KB
共 2 条
- 1
资源评论
kejibukeneng
- 粉丝: 40
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功