How do I fix: "Undefined function 'fit' for input arguments of type 'function_handle'."?

5 次查看(过去 30 天)
I'm not entirely understanding the reason why the follow code doesn't work:
close all; clear all;
x = [2 4 6 8 10];
y = [0.18 0.45-.05 0.85-.1 1.35-.15 2-.2];
fun = @(a,b,c,x) -sqrt(a^2-(x-b).^2)+c;
guess = fun(15,0,15,x); % fun(a,b,c,x)
plot(x,guess,'r:')
fittedmodel = fit(x',y',fun,'StartPoint',[15 0 15])
plot(fittedmodel,'r-');
When I run the code I get the following error:
Undefined function 'fit' for input arguments of type 'function_handle'.
How can I fix this?
Thank you.

回答(1 个)

Walter Roberson
Walter Roberson 2013-10-5
Which MATLAB version are you using?
Ensure that you have the Curvefitting toolbox installed and licensed. Use
which -all fit
  2 个评论
Jacob
Jacob 2013-10-5
编辑:Walter Roberson 2013-10-5
I'm using version 2013a.
When I use 'which -all fit' I have an output showing that I have the following libraries within my toolbox:
gmdistribution method
ProbDistUnivParam method
NaiveBayes method
Does this mean I'm missing some libraries to use the fit function I would like to use or do I have to readjust my parameters to those methods?

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Introduction to Installation and Licensing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by