MATLAB Answers

Error message in Non-linear fit for more than three variables

1 view (last 30 days)
MOHAMED ABDULAZIM
MOHAMED ABDULAZIM on 11 Aug 2020
Commented: MOHAMED ABDULAZIM on 14 Aug 2020
% Create an anonymous function that describes the expected relationship
% between X and Y
fun = @(b,X) b(1)*X(:,1) + b(2)*X(:,2) + b(3) * exp(b(4)*X(:,3));
% Create a data set to use for our example
% Specify beta
b = [100; 200; 3; 4];
% Create some X variables
X = rand(100,3);
% Y = fun(X)
Y = fun(b,X) + randn(100,1);
% Specify a vector of starting conditions for the solvers
b0 = [75; 300; 1; 8];
% Perform a nonlinear regression
beta = nlinfit(X,Y, fun, b0);
When I run the following script for non-linear fit ,I get this error message (Error in nlinfit (line 14) beta = nlinfit(X,Y, fun, b0);
Are there any syntax errors in the following code?

  5 Comments

Show 2 older comments
MOHAMED ABDULAZIM
MOHAMED ABDULAZIM on 11 Aug 2020
Does the presence in the anonymous function in the script make this error ? My MATLAB Program virsion is 2013a
Walter Roberson
Walter Roberson on 12 Aug 2020
You named the file of code nlinfit.m and that is interfering with calling the Statistics Toolbox nlinfit() function. You need to rename your own script to something else.

Sign in to comment.

Answers (0)

Products


Release

R2013a

Community Treasure Hunt

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

Start Hunting!