Using fit 'exp2' an error with "weights"

조회 수: 14 (최근 30일)
JJC
JJC 2013년 4월 12일
댓글: Zahra Ali 2017년 11월 2일
I've used the fit function a few times on creep data sets (i.e. time vs displacement) and have been using the 'exp2' fit type. On smaller data sets I've had no problem using this function. Now I'm looking at a 10 folder bigger data set and am getting an error.
I was previously running this and had no problem
[creep_data_fit, gof] = fit(creep_data(1:1800,1),creep_data(1:1800,2), 'exp2')
Now I'm running this and getting the following error
[creep_data_fit, gof] = fit(creep_data(1:10800,1),creep_data(1:10800,2), 'exp2')
Any ideas on why i'm getting this error?
Error using fit>iFit (line 235)
X, Y and WEIGHTS cannot have NaN values.
Error in fit (line 109)
[fitobj, goodness, output, convmsg] = iFit( xdatain, ydatain, fittypeobj, ...

답변 (2개)

Tom Lane
Tom Lane 2013년 4월 13일
Since you didn't specify weights, it seems like the NaN value must be in either x or y. You can find the usable values (using your own variable names) like this:
t = ~isnan(x) & ~isnan(y);
Then omit the NaN values from the fit:
fit(x(t),y(t),'poly1')
  댓글 수: 1
Alison
Alison 2013년 4월 16일
This worked great. Thanks Tom.

댓글을 달려면 로그인하십시오.


Alison
Alison 2013년 4월 16일
This worked great thanks Tom!
  댓글 수: 1
Zahra Ali
Zahra Ali 2017년 11월 2일
I had been working on something similar for a very long time, thank you for your help!

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Get Started with Curve Fitting Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by