Fitting Cumulative Gaussian Function to Data Points
5 views (last 30 days)
Show older comments
Hello,
I am trying to fit the cumulative Gaussian Function to my data points, to find out the PSE. So far I used this function:
f = @(b,x_values) normcdf(x_values, b(1), b(2)); % Objective Function
NRCF = @(b) norm(yVorB - f(b,x_values)); % Norm Residual Cost Function
B1 = fminsearch(NRCF, [-1; 5]); % Estimate Parameters
x = 0:5
y = [0.7 0.4 0.2 0.4 0.6 0.9]
I am getting: 1.81051
However, the correct value should be: 1.91293286. Does anyone have ideas? Is there a better way to fit the cumulative function to my data in Matlab?
Thank you for your help :)
0 Comments
Accepted Answer
Matt J
on 18 Mar 2021
Edited: Matt J
on 18 Mar 2021
Your data points don't look anything like a CDF to me (no monotonic trend of any kind), but one of the estimated parameter values I get is pretty close to what you say you're looking for.
format long
x = 0:5;
y = [0.7 0.4 0.2 0.4 0.6 0.9];
f = @(b,x_values) normcdf(x_values, b(1), b(2)); % Objective Function
NRCF = @(b) norm(y - f(b,x)); % Norm Residual Cost Function
params = fminsearch(NRCF, [-1; 5]) % Estimate Parameters
2 Comments
Matt J
on 19 Mar 2021
My definition of NRCF is different from yours. It uses y and x instead of yVorB and x_values.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!