MATLAB Answers

Nonlinear Regression with Errors in X and Y

41 ビュー (過去 30 日間)
harry wang
harry wang 2012 年 3 月 22 日
編集済み: Tom Lane 2017 年 12 月 15 日
I am dealing a series of data point X and Y, their relation is nonlinear, how can i do a nonlinear regression to obtain the fitted curve: Y=a*X^2+b*X+c? I am especially interested in the uncertainty of the quadratic coefficient: "a", i have found some programs but they only consider the error in Y without including the errors in X. Are there any way to determine the uncertainty of "a" considering errors in both X and Y?
Mike

回答 (3 件)

Safwan
Safwan 2012 年 3 月 22 日
What do you mean with the errors in X. Anyway, when you plot your data you can go to Tools->Basic fitting (in the figure) and fit your data with quadratic curve. Otherwise if you have the Curve fitting Toolbox of Matlab then you can use more functions. Last suggusted option from me, you can use the fminsearch.m function of matlab to find the value of a.
  1 件のコメント
harry wang
harry wang 2012 年 3 月 22 日
I can find out the value of a using what you suggested, but how to determine the uncertainty of "a"? if i know the errors range for X and Y.

サインインしてコメントする。


Sean de Wolski
Sean de Wolski 2012 年 3 月 22 日
That looks like a multiple linear regression to me.
doc polyfit
  2 件のコメント
Sean de Wolski
Sean de Wolski 2012 年 3 月 23 日
nope.

サインインしてコメントする。


Tom Lane
Tom Lane 2012 年 3 月 23 日
編集済み: Tom Lane 2017 年 12 月 15 日
If you just had y and one or more x variables as predictors, there is information about an errors-in-variables fit here:
If you applied this literally to your example, you'd have to imagine that x and x^2 had separate errors. There is a file exchange submission that appears to address this, but I haven't played around with it:
  1 件のコメント
harry wang
harry wang 2012 年 3 月 23 日
I have checked out this program on total least square method, it seems it can only determine the error for the sum of squared orthogonal distance, it could not determine the errors for "a", "b", and "c".

サインインしてコメントする。

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by