MathGroup Archive 2000

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Second Opinion


dist = PoissonDistribution[mu];


Range[0, Infinity]

PDF[dist, x]


Verify that the distribution is valid on the domain

Sum[PDF[dist, x], {x, 0, Infinity}] == 1


mu == Mean[dist] == Variance[dist]


CDF[dist, x]

GammaRegularized[1 + Floor[x], mu]

  CDF[dist, x] == Sum[PDF[dist, k], {k, 0, x}], 
  Element[x, Integers]]


Plot[CDF[PoissonDistribution[5], n], {n, 0, 10}, PlotPoints -> 101, 
    PlotStyle -> RGBColor[1, 0, 0]];

Plot3D[CDF[PoissonDistribution[mu], n], {mu, 1, 5}, {n, 0, 6}, 
    PlotPoints -> 25];

Demonstrating that the mean of Poisson data is the maximum likelihood 
estimate for the parameter mu

data = Table["x" <> ToString[k], {k, 20}];

(mu /. Solve[D[(Plus @@ Log[PDF[dist, #] & /@ data]), mu] == 0, mu][[1]]) == 


data = RandomArray[PoissonDistribution[10*Random[]], {250}];

(mu /. Solve[D[(Plus @@ Log[PDF[dist, #] & /@ data]), mu] == 0, mu][[1]]) == 


Bob Hanlon

In a message dated 12/13/00 3:40:40 AM, john.lai at writes:

>I tried to calculate Poisson Distribution in a backdoor way and used
>mathematica to model it.  I could not get what I wanted.  I don't think
>is mathematica problem and more than likely my method is flawed.  So I
>this out to see if some of you may spot my error.
>Poisson Distribution,P(n) =1-Summation [exp(-n)*(n^x)]/Factorial(x)  where
>goes from 0 to N-1
>For given n and N, P(n) can be determined easily.  However, I want to
>determine N if P(n) and n are specified and I do not want to get access
>Poisson lookup table.  My idea is to calculate P(n) with a series of n
>and N
>(essentially generating the tables).  Plot a surface curve whose variables
>are n, P(n) and N.  The idea was once this surface is obtained, with x-axis
>as n, y-axis as P(n) and z-axis as N, then for a given n and P(n) I can
>obtain N.
>I wrote a C program to generate P(n) and use mathematica to plot this
>surface.  I have 14 sets of n and in each set of n, I have 139 variables
>(i.e. N runs from 1 to 140 ), so there are 139 corresponding values of
>for each n.  When I tried to use the function Fit to estimate this surface,
>it took about   hr for my 500MHz desktop to calculate!  And the resultant
>expression is huge!
>Then, I cut down the dimension of my data set.  For each n, I generated
>values of N and repeated the process again.  However, no matter what
>combination of polynomial I used (x,x^-1,Exp(-x),Exp(-x^2),Exp(-x-y).),
>resulting equation of the surface is meaningless.  It doesn't look right
>least I expected it to resemble some sort of Poisson or even Gaussian shape)
>and substituting P(n) and n back, I got garbage.  I have enclosed a .nb
>for reference.  [Contact the author to obtain this file - moderator]
>So after all this, does it mean that my scheme of calculating Poisson
>Distribution is fundamentally wrong?
>Any suggestions are appreciated and thanks in advance.

  • Prev by Date: RE: Bug in Package Graphics`Graphics` ?
  • Next by Date: Hypercube Graphing
  • Previous by thread: Re: Second Opinion
  • Next by thread: Bug in Limit Package