clear clc x1=[140.2 129.6 120.5 118.7 113.7 107.6 111.3 111.5]';%第一产业 x2=[4526.4 4774.4 5310.6 5647.7 5715.1 5716.4 7268.6 6605.1]';%65岁及以上人口(万人) x3=[18302 19995.3 22569.3 24553.6 29542.5 30278.6 32889.6 34894.3]';%少儿抚养比(%) y=[22968.6 24899.3 28000.4 30320 35371.3 36102.6 40269.6 41610.9]';%人均GDP万 2020-2019-2018... x=[ones(size(y)) x1 x2 x3];%%开始分析 [b,bint,r,rint,stats]=regress(y,x,0.0005);%b回归系数,bint回归系数的区间估计,r残差,rint置信区间,stats检验回归模型的统计量 %stats检验回归模型的统计量。有4个数值:判定系数R^2,F统计量观测值,检验p的值,误差方差的估计 %ifp小于0.001,则拟合有效 hold on; y=b(1)+b(2)*x1+b(3)*x2+b(4)*x3; %代入已经求得的参数,拟合函数式 plot(x,y,'kx-'); axis([1 10 22000 44000]); b1=b(1) b2=b(2) b3=b(3) b4=b(4) coefficient=polyfit(x,y,1); %用一次函数拟合曲线,想用几次函数拟合,就把n设成那个数 y1=polyval(coefficient,x); %plot(x,y,'-',x,y1,'o'),这个地方原来'-'和'o'写反了,现已更正,可以得到正确的图形。 plot(x,y,'o',x,y1,'-')
时间: 2024-04-01 09:33:46 浏览: 16
这段代码主要是对一组数据进行了多元线性回归分析,并进行了可视化展示。其中,x1、x2、x3是自变量,y是因变量,使用regress函数进行多元线性回归分析,得到了回归系数、残差等统计量,并使用polyfit和polyval函数对数据进行了一次函数拟合,并通过plot函数进行可视化展示。如果有需要,可以对参数进行提取和使用。