资源简介
最全的matlab非线性回归代码,一键操作,有详细的注解
代码片段和文件信息
%非线性回归
%一个自变量的形式
%指数模型(I)线性回归
x=[0.5 1.5 2.5 3.5 4.5 5.5 6.5 7.5 8.5 9.5 10.5 11.5 12.5 13.5 14.5 15.5];
y=[26300 25100 19900 15500 11500 9800 5200 4600 3200 2300 1700 1200 900 700 600 500];
plot(xy‘r.‘); %绘制散点图
xlabel(‘Distance‘); %横轴标签(到城市中心的距离)
ylabel(‘Average density‘); %纵轴标签(人口平均密度)
hold on %保持图形
X=[ones(length(y)1)x‘]; %自变量矩阵
Y=log(y‘); %因变量向量
[BBintEEintStats]=regress(YX); %回归分析
R2=Stats(1); %拟合优度
a=exp(B(1)); %模型常数还原
b=-B(2); %回归系数
f=a*exp(-b*x); %模型表达
plot(xf‘b-‘); %添加趋势线
hold off %绘图结束
s=sqrt(sumsqr(y-f)/(length(f)-2)); %计算标准误差
abR2s %输出主要结果
%指数模型(I)的非线性拟合
%myfun.m
function yhat = myfun(beta x)
b1 = beta(1);
b2 = beta(2);
yhat = b1*exp(b2*x);
%以上模型通过编辑窗口保存在Matlab的work文件夹中
%指数模型(I)的非线性拟合
x=[0.5 1.5 2.5 3.5 4.5 5.5 6.5 7.5 8.5 9.5 10.5 11.5 12.5 13.5 14.5 15.5];
y=[26300 25100 19900 15500 11500 9800 5200 4600 3200 2300 1700 1200 900 700 600 500];
plot(xy‘r.‘); %绘制散点图
xlabel(‘Distance‘); %横轴标签(到城市中心的距离)
ylabel(‘Average density‘); %纵轴标签(人口平均密度)
hold on %保持图形
beta0=[0 0]; %设定迭代初始值
O=statset(‘MaxIter‘200); %设定最大迭代次数
[BEJ]=nlinfit(xy‘myfun‘beta0O); %非线性拟合
a=B(1); %模型常数
b=-B(2); %回归系数
f=a*exp(-b*x); %模型表达
plot(xf‘b-‘); %添加趋势线
hold off %绘图结束
s=sqrt(sumsqr(y-f)/(length(f)-2)); %计算标准误差
abs %输出主要结果
%对数模型的线性回归
x=[100.6 103.5 231.3 120.4 230.4 234.3 162.7 236.3 158.7 145.2 207 203.3 433.5 372.9 525.3 629.2 963.4 608.8 876.7 832 703.1 872.6 2196.2 2422.4 2230.5 1117.1 2558.6 1190 1750.2 3710 6050 5760 4460 6618.2 6272.8 3840 6926.3 3580 5817.2 6610];
y=[2.6 4 6.7 8.9 10.2 12.6 14.6 18 21 22 26.1 28 31 32 34 36.4 38.6 40.8 43 44.5 46.4 48 50 52.7 54.3 59 60.1 62 64.4 67 69 70 72 74 76 78 80.7 82 86.4 88];
plot(xy‘r.‘); %绘制散点图
xlabel(‘Per capita income‘); %横轴标签(人均收入)
ylabel(‘Percent Urban‘); %纵轴标签(城市化水平)
hold on %保持图形
X=[ones(length(y)1)log(x‘)]; %自变量矩阵
Y=y‘; %因变量向量
[BBintEEintStats]=regress(YX); %回归分析
R2=Stats(1); %拟合优度
a=B(1); %模型常数
b=B(2);
- 上一篇:PMSM矢量控制的Simuli
nk仿真 - 下一篇:电子密码锁.ms14
相关资源
- matlab_OFDM调制解调(来自剑桥大学)
- Matlab路面裂缝识别69319
- 高灵敏度GPS接收机MATLAB仿真,附捕获
- 基于MATLAB的质点弹道计算与外弹道优
- 阵列天线的matlab仿真
- MATLAB 经典程序源代码大全
- MATLAB小波软阈值去噪代码33473
- 天线阵的波束形成在MATLAB仿真程序及
- 非线性SVM算法-matlab实现
- 《MATLAB 智能算法超级学习手册》-程序
- 组合导航matlab程序
- 读取txt文件内容matlab代码实现
- Matlab实现基于相关的模板匹配程序
- matlab优化工具箱讲解
- 基于MATLAB的快速傅里叶变换
- 光纤传输中的分布傅立叶算法matlab实
- 基于matlab的图像处理源程序
- matlab 椭圆拟合程序
- 算术编码解码matlab源代码
- optical_flow 光流法 matlab 实现程序
- 引导图像滤波器 Matlab实现
- 分形几何中一些经典图形的Matlab画法
- OFDM系统MATLAB仿真代码
- SVM工具箱(matlab中运行)
- 图像小波变换MatLab源代码
- LU分解的MATLAB实现
- 冈萨雷斯数字图像处理matlab版(第三
- 替代数据法的matlab程序
- 用matlab实现的多站定位系统性能仿真
- 通过不同方法进行粗糙集属性约简m
评论
共有 条评论