MATLAB 编程 最小二乘法

function C=kang(X,Y,M)
%X和Y为输入的两个对应的向量
%M为构造的M阶最小二乘多项式
n=length(X);
B=zeros(1:n);
F=zeros(n,M+1);
for k=1:M+1
F(:,k)=X'.^(k-1);
end
A=F'*F;
B=F'*Y';
C=A\B;
%把C的前面的行与后面的行进行对称变换
%如flipud([1 2;3 4;5 6;7 8])
% 7 8
% 5 6
% 3 4
% 1 2
C=flipud(C);
程序没怎么看明白,麻烦各位解释一下,加点注释。谢谢

根据二项式最小二乘原理,对于超定方程 FA=Y

可用最小二乘求解, 即求解正规方程 F'FA=F'Y, A=(F'F)\F;Y, 计算便得到了系数矩阵A, 

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-12-06
最好放在matlab里运行一下,再看看
相似回答