以下代码统一为读入xlsx文件,其中第一列为因变量,其余列为自变量,每一行代表一个样本
(matlab代码)
线性回归
%读取数据
[X,TXT,RAW]=xlsread('train_element.xlsx');
y=X(:,1); %第一列为y值
X(:,1)=[1]; %将第一列数值变为1
[b,bint,r,rint,stats]=regress(y,X);
b %回归系数,第一个是常数项
%测试
[TX,TXT,RAW]=xlsread('test_element.xlsx');
TY_num = size(TX,1);
TY = [1:TY_num];
TY(1,:) = b(1);
for i = 1:30 %测试数据30行
for j = 1:21 %每一行21个自变量
TY(i) = TX(i,j+1) * b(j+1)+TY(i); % TX第一个是1,故j+1;b第一个是常数项系数,故j+1
end
end
hold on
plot(TY)
plot(TX(:,1))
legend('预测值','真实值');
TY
BP网络
在应用程序处打开Neural Net Fitting
训练神经网络模型
参见 (如何利用matlab做BP神经网络分析-利用matlab神经网络工具箱)[ https://blog.youkuaiyun.com/ljyljyok/article/details/81362465 ]