Filter löschen
Filter löschen

Nonlinear Regression with Errors in X and Y

4 Ansichten (letzte 30 Tage)
harry wang
harry wang am 22 Mär. 2012
Bearbeitet: Tom Lane am 15 Dez. 2017
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

Antworten (3)

Safwan
Safwan am 22 Mär. 2012
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 Kommentar
harry wang
harry wang am 22 Mär. 2012
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.

Melden Sie sich an, um zu kommentieren.


Sean de Wolski
Sean de Wolski am 22 Mär. 2012
That looks like a multiple linear regression to me.
doc polyfit
  2 Kommentare
Safwan
Safwan am 22 Mär. 2012
Hi Sean, i have a question for you. Have you ever tried to convert a polyfit block (Simulink) into C code by the embedded coder?
Sean de Wolski
Sean de Wolski am 23 Mär. 2012
nope.

Melden Sie sich an, um zu kommentieren.


Tom Lane
Tom Lane am 23 Mär. 2012
Bearbeitet: Tom Lane am 15 Dez. 2017
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 Kommentar
harry wang
harry wang am 23 Mär. 2012
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".

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by