submyline1.m

来自「直线拟合与多项式拟合 涉及:《数值计算》等相关课程的基础内容 共两个例」· M 代码 · 共 22 行

M
22
字号
function [A,B,S]=submyline1(x,y)

% [A,B,S]=submyline1(x,y)  最小二乘法的直线拟合 f(x) = A + Bx
% 输入:   -- x  1xN 的向量
%          -- y  1xN 的向量 (x,y)是实验点数据
% 输出:   -- A  拟合直线的截距
%          -- B  拟合直线的斜率
%          -- S  拟合结果的剩余标准误差
%袁怡圃 2003/04/24

xmean=mean(x);
ymean=mean(y);
sumx2=(x-xmean)*(x-xmean)';
sumxy=(x-xmean)*(y-ymean)';
B=sumxy/sumx2;
A=ymean-B*xmean;
N=length(x);
Q=0;
for i=1:N
    Q=Q+(y(i)-A-B*x(i))^2;
end
S=sqrt(Q/(N-2));

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?