Fitting Cumulative Gaussian Function to Data Points

조회 수: 4 (최근 30일)
TS
TS 2021년 3월 18일
댓글: Matt J 2021년 3월 19일
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 :)

채택된 답변

Matt J
Matt J 2021년 3월 18일
편집: Matt J 2021년 3월 18일
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
params = 2×1
1.912932525139948 7.839459850514324
  댓글 수: 2
TS
TS 2021년 3월 19일
Hey,
thank you for your quick answer! Sorry, I just saw that I am getting 1.91, however the correct answer is 1.81. Sorry, I messed them up.
Because I used the same way as you to figure out PSE so far. You did not change anything in the function, if I am correct?
Matt J
Matt J 2021년 3월 19일
My definition of NRCF is different from yours. It uses y and x instead of yVorB and x_values.

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

추가 답변 (0개)

Community Treasure Hunt

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

Start Hunting!

Translated by