通过线性回归原点

90(30天)
KH
KH 2019年4月17日
回答: 图像分析 2019年4月18日
我有下面的代码,应该创建一个线性符合(红色线)的原始数据通过原点(应力、应变)。然而,我注意到的符合原始数据并不是我所希望的。最小二乘拟合的定义,我认为适合的下面的地区(蓝色蚀刻)及以上(绿色蚀刻)曲线相等(见附件图片)。也许有人可以提供我指导我如何实现这个吗?
谢谢你在发达!
代码:
清晰的所有;关闭所有;clc
%应变(x)和压力(y)的数据
x = (0.001285797 0.003961826 0.00794437 0.011775521 0.015872369 0.02104614
0.025087779 0.028869823 0.03265608 0.035941842 0.039237685 0.041613848
0.043244122 0.043796973 0.044113916);
y = [435.5682116 709.7425027 1009.698448 1681.209018 2695.849269 2643.749641
3752.858776 5470.575841 7448.561195 8853.52726 9654.903814 10952.03131
11970.73227 12523.02663 12909.90468);
%计算拟合线
K = x (:) \ y (:);
yfit = x (:) * K;
%绘制
图(1)
情节(x, y,“柯”)
持有
情节(x, yfit,“- r”)
包含(“应变”)
ylabel (“压力、Pa”)
传奇({“原始数据”,“安装通过(0,0)”},“位置”,“西北”)
持有
网格
轴(max (x)[0 0马克斯(y)))
1评论
杰夫•米勒
杰夫•米勒 2019年4月18日
你陈述的假设只如果模型包括一个有效拦截。当你力线通过(0,0),剩余工资不再总和必须为零。你可能会获得更多的信息通过比较以下dlm00 dlmfree:
dlm00 = fitlm (x, y,“拦截”、假);
yfit00 = x (:) * dlm00.Coefficients {1 1};
sum00 =总和(dlm00.Residuals.Raw);
dlmfree = fitlm (x, y);
yfitfree = x (:) * dlmfree。系数{2,}+ dlmfree.Coefficients {1 1};
sumfree =总和(dlmfree.Residuals.Raw);

登录置评。

答案(1)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!