[R] ML fit of gamma distribution to grouped data

Augusto.Sanabria at ga.gov.au Augusto.Sanabria at ga.gov.au
Thu Nov 30 01:09:30 CET 2006


Thomas,

The Gamma distr. can be fitted via ML using:

Library("MASS")
GF <- fitdistr(given_data,"gamma")
sh <- GF$estimate[1]
ra <- GF$estimate[2]

Fitting via Moments, m:
var <- m[2] - m[1]*m[1]
sh <- m[1]*m[1]/var
sc <- m[1]/var
ra <- 1/sc

G_pdf <- dgamma(breaks,shape=sh,rate=ra,scale=1/ra)


Hope it helps,

Augusto


--------------------------------------------
Augusto Sanabria. MSc, PhD.
Mathematical Modeller
Risk Research Group
Geospatial & Earth Monitoring Division
Geoscience Australia (www.ga.gov.au)
Cnr. Jerrabomberra Av. & Hindmarsh Dr.
Symonston ACT 2601
Ph. (02) 6249-9155
 
 




-----Original Message-----
From: r-help-bounces at stat.math.ethz.ch
[mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Thomas Petzoldt
Sent: Tuesday, 28 November 2006 10:26
To: r-help at stat.math.ethz.ch
Subject: [R] ML fit of gamma distribution to grouped data


Hello,

we have a set of biological cell-size data, which are only available as 
frequencies of discrete size classes, because of the high effort of 
manual microscopic measurements.

The lengths are approximately gamma distributed, however the shape of 
the distribution is relatively variable between different samples (maybe 
it's a mixture in reality).

Is there any ML fitting (or moment-based) procedure for the gamma 
distribution and grouped data already available in R?

Here is a small example:

breaks <- c(0, 20, 30, 40, 50, 60, 70, 80, 90, 100, 150)
mids   <- c(10, 25, 35, 45, 55, 65, 75, 85, 95, 125)
counts <- c(87, 5, 2, 2, 1, 1, 0, 0, 1, 1)

Any help is highly appreciated

Thomas P.

______________________________________________
R-help at stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list