linregr.m

来自「The following Matlab code converts a Mat」· M 代码 · 共 19 行

M
19
字号
function [a,r2]=linregr(x,y)
n=length(x);
if length(y)~=n, error ('x and y must be same length ');
end

x=x(:); y=y(:);
sx= sum (x); sy= sum (y);
sx2= sum(x.*x);
sxy=sum(x.*y);
sy2= sum (y.*y);
a(1)= (n*sxy-sx*sy)/(n*sx2-sx^2);
a(2)=  sy/n-a(1)*sx/n;
r2=((n*sxy-sx*sy)/sqrt(n*sx2-sx^2)/sqrt(n*sy2-sy^2))^2
xp=linspace(min(x), max(x),2);
yp=a(1)*xp+a(2);
plot (x,y,'o',xp,yp)
grid on 

⌨️ 快捷键说明

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