How can I get function expression for Cumulative distribution function

9 visualizaciones (últimos 30 días)
I have a cumulative distribution function(cdf). I have attached the figure. How can I fit the curve and get the function
expression for it?

Respuesta aceptada

Star Strider
Star Strider el 29 de Jul. de 2019
Likely the easiest way to estimate the parameters is with the Statistics and Machine Learning Toolbox fitdist function:
x = randn(1, 25)*2 + 5; % Create Data (Mean = 5, St Dev = 2)
b = fitdist(x(:), 'normal')
producing:
b =
NormalDistribution
Normal distribution
mu = 5.30768 [4.42359, 6.19177]
sigma = 2.1418 [1.67238, 2.97957]
Choose the appropriate distribution function for your data.
  6 comentarios
Miley Lee
Miley Lee el 29 de Jul. de 2019
hello, I have try the below code:
x=sort(y,'descend');
[mu,sigma] = normfit(x);
d=cdf('norm',x,mu,sigma);
figure
plot(x,d)
hold on;
p = @(x,mu,sigma) (1 + erf((x-mu)/(sigma*sqrt(2))))/2;
plot(p)
However, it still said plot(p) can not achieved. May I ask what is the "erf" mean?
Star Strider
Star Strider el 29 de Jul. de 2019
I provided you with a link to the erf function. It is the error function.
I provided you with the correct code for the plot. Use it!

Iniciar sesión para comentar.

Más respuestas (1)

Miley Lee
Miley Lee el 30 de Jul. de 2019
hello,sorry for the late reply.
Can I ask where is he correct code for the plot? I haven't find in the answer.
ask.PNG
  1 comentario
Star Strider
Star Strider el 30 de Jul. de 2019
It is in this Comment.
Specifically:
x = randn(1, 25)*2 + 5; % Create Data
x = sort(x);
[mu,sigma] = normfit(x);
d=cdf('norm',x,mu,sigma);
figure
plot(x,d)
I did not initially provide the ‘x’ vector, since you have your own. I created it to test my code, and include it here for completeness. (The sort function sorts ascending by default, so there is no need to specify it.)
An alternative using the erf function is:
x = randn(1, 25)*2 + 5; % Create Data
x = sort(x);
[mu,sigma] = normfit(x);
p = @(x,mu,sigma) (1 + erf((x-mu)/(sigma*sqrt(2))))/2; % Equivalent to ‘normcdf’
figure
plot(x,p(x,mu,sigma))

Iniciar sesión para comentar.

Community Treasure Hunt

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

Start Hunting!

Translated by