Attempting to fit data with a sigmoid curve, but not an option in curvefitter toolbox
31 views (last 30 days)
Show older comments
I am working on fitting data with a sigmoidal curve, but my CurveFitter toolbox does not have the sigmoidal option under fit types. I have tried a custom fit, but it is not giving me any useable fits.
eqn:
'a/(1+exp(-b*(x-c)))'
0 Comments
Answers (3)
Star Strider
on 21 Aug 2024 at 19:15
Perhaps something like this —
s = fittype('a/(1+exp(-b*(x-c)))', 'Coefficients',{'a','b','c'}, 'Independent','x', 'Dependent','y')
x = linspace(0, 10, 20);
y = rand(size(x));
sfit = fit(x(:), y(:), s)
figure
plot(sfit, x, y)
grid
.
0 Comments
Sam Chak
on 21 Aug 2024 at 20:01
rng(0,"twister")
x = linspace(-1, 1, 101)';
y = 1./(1 + exp(- 10*x)) + 0.02*randn(101, 1);
y(y>1) = 1;
y(y<0) = 0;
logsigm = fit(x, y, 'logistic')
plot(logsigm, x, y), grid on, grid minor
0 Comments
Image Analyst
on 21 Aug 2024 at 22:16
Attach your actual data so we can work with it. In the meantime, I'm attaching my demo of fitting a sigmoid, though it uses a different formula than yours. However, you can adapt it to use your formula.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1757379/image.png)
0 Comments
See Also
Categories
Find more on Linear and Nonlinear Regression in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!