[R] Goodness of fit to Poisson / NegBinomial

Yudi Pawitan yudi at stat.ucc.ie
Wed Feb 7 16:14:06 CET 2001


I had a very similar example before. This is for Mark's data:
(the last frequency is for k>= 5). (Mark should be happy with
the neg-binomial fit.)

-YP-

x_ c(70, 38, 17, 10,  9, 6) 
kk_ 0:5
n_ sum(x)

fn_ function(p){
    r_ p[1]
    th_ p[2]
    ll _ -sum(x[1:max(kk)]*log(dnbinom(kk[-length(kk)],r,th))) -
          x[length(kk)]*log(1-pnbinom((max(kk)-1),r,th))
    return(ll)
}

a_ nlm(fn,p=c(.9,.5),hes=T)
est_ a$est

phat_ c(dnbinom(kk[-length(kk)],est[1],est[2]),
        1-pnbinom((max(kk)-1),est[1],est[2]))
E_ n*phat
chi2_ sum((x-E)^2/E)
cat('Chi2 goodness-of-fit = ',chi2,'\n')
cat('P-value=',1-pchisq(chi2,df=length(kk)-1-2),'\n')

print(cbind(O=x,E=round(E,1),err=round((x-E)^2/E,1)))




==========================

At 09:14 AM 2/7/01 +0000, Mark Myatt <mark at myatt.demon.co.uk> wrote:
>All,
>
>I have some data on parasites on apple leaves and want to do a
>goodness of fit test to a Poisson distribution. This seems to
>do it:
>
>  mites <- c(rep(0,70),
>             rep(1,38),
>             rep(2,17), 
>             rep(3,10), 
>             rep(4,9), 
>             rep(5,3), 
>             rep(6,2), 
>             rep(7,1))
>
>  tab <- table(mites)
>  NSU <- length(mites)
>  N <- sum(mites)
>  NSU.Mean <- N / NSU
>  exp <- dpois(as.numeric(dimnames(tab)[[1]]), NSU.Mean) *  NSU
>  chi2 <- sum(((as.vector(tab) - exp)^2) / exp)
>
>  tab
>  exp
>  chi2
>  
>I have some small expected values and so need to collapse some
>categories. If anyone has code to do that already ... but my
>question is how would I do the same for a negative binomial
>distribution?
>
>Mark
>
>--
>Mark Myatt
>
>
>-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
.-.-
>r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
>Send "info", "help", or "[un]subscribe"
>(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
>_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
._._
>
Yudi Pawitan     yudi at stat.ucc.ie
Department of Statistics UCC
Cork, Ireland
Ph   353-21-490 2906
Fax 353-21-427 1040 
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list