如何用MATLAB最小二乘法擬合曲線?
網(wǎng)友解答: 若函數(shù)的形式是多項(xiàng)式函數(shù),如 y = p1 * x^n + p2 * x^(n-1) + ... + pn * x + p(n+1),則可以用polyfit函數(shù)。若是指數(shù)函數(shù)
若函數(shù)的形式是多項(xiàng)式函數(shù),如 y = p1 * x^n + p2 * x^(n-1) + ... + pn * x + p(n+1),
則可以用polyfit函數(shù)。
若是指數(shù)函數(shù)、對數(shù)函數(shù)、三角函數(shù)等,則建議可以先轉(zhuǎn)化為多項(xiàng)式函數(shù)。
網(wǎng)友解答:例如,函數(shù)形式為y=ax^2+bx+c,則MATLAB的代碼形式如下:
x=[x1 x2 x3];
y=[y1 y2 y3];
p=polyfit(x,y,2)
運(yùn)行之后可以得到a、b、c的大小。如果函數(shù)是一元三次方程,把polyfit括號(hào)里的數(shù)字改成3就行。如果是一元一次方程,把polyfit括號(hào)里的數(shù)字改成1就行。其他多項(xiàng)式函數(shù)以此類推。