可以用的,而且冗余值越多对于最小二乘拟合越精确(前提是没有坏值)
比方说我一个x=1 有5个y 2,3,4,5,6
则把x写为x = [1 1 1 1 1]
y = [2 3 4 5 6]
就可以了.
程序楼上两位已经给了,借用下.
p = polyfit(x,y,2);
如果不想用polyfit,可以自己写一个,原理和polyfit其实是一样的
x=[5.50,6.75,7.25,5.50,7.00,6.50,6.75,5.25,5.25,6.00,6.50,6.25,7.00,6.90,6.80,6.80,7.10,7.00,6.80,6.50,6.25,6.00,6.50,7.00,6.80,6.80,6.50,5.75,5.80,6.80];
y=[7.38,8.51,9.52,7.50,9.33,8.28,8.75,7.30,7.20,8.00,7.89,8.15,9.10,8.86,8.90,8.87,9.26,9.00,8.75,7.95,7.65,7.27,8.00,8.50,8.75,9.21,8.27,7.67,7.93,9.26];
m = (x.*x)'
A = [m ,x' ,1]
para = inv(A'*A)*A'*y'
para里面为[a b c]
a为2次项系数,b为一次,c为常数.