How do you fit a gamma distribution?
13 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Bhekisizwe
el 7 de Abr. de 2012
Comentada: G M Fahad Bin Mostafa
el 21 de Feb. de 2019
Hi There
How do you fit a gamma distribution to random data while fixing one of the gamma distribution parameters? Lets say we fix the shaping factor k for example and try to find the scaling factor Thetha of the gamma pdf? How is this done in Matlab?
0 comentarios
Respuesta aceptada
Tom Lane
el 7 de Abr. de 2012
Expanding on what Wayne wrote, you can supply your fixed-parameter version of the gamma distribution to the mle function. Try this:
x = gamrnd(1.1,100,100,1);
ab = gamfit(x) % fit a and b
b = mle(x,'pdf',@(x,b)gampdf(x,1,b),'start',1) % fix a=1
% compare the empirical distribution and two fits
ecdf(x);
xx = linspace(0,max(x));
line(xx,gamcdf(xx,ab(1),ab(2)),'color','r')
line(xx,gamcdf(xx,1,b),'color','c')
3 comentarios
G M Fahad Bin Mostafa
el 21 de Feb. de 2019
Hi Tom
I want to fit excel data with gamma in matlab. Would you please help me?
Más respuestas (1)
Wayne King
el 7 de Abr. de 2012
You can use either mle() with the 'Distribution','gamma'
gamfit()
or fitdist() with 'gamma'. All require the Statistics Toolbox.
R = gamrnd(5,2,1e3,1);
gpdf = fitdist(R,'gamma');
[phat,phatci] = gamfit(R);
%same as
[phat,phatci] = mle(R,'Distribution','gamma');
Once you fix one of the parameters, you can create gamma pdfs by varying the other using gampdf and fit that to your data.
0 comentarios
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!