[R] birthday problem (factorial limit)

(Ted Harding) Ted.Harding at manchester.ac.uk
Sun Sep 28 20:09:42 CEST 2008


On 28-Sep-08 17:51:55, Uwe Ligges wrote:
> Jörg Groß wrote:
>> Hi,
>> I tried to calculate the formula for the birthday problem
>> (the probability that at least two people out of a group of
>> n people share the same birthday)
>> 
>> But the factorial-function allows me only to calculate
>> factorials up to 170.
>> 
>> So is there a way to push that limit?
>> 
>> to solve this formula:
>> 
>> (factorial(365) / factorial((365-23))) / (365^23)
> 
> Obviously you can easily rewrite this formula to:
> 
> prod(343:365) / (365^23)
> 
> or
> 
> factorial(23) * choose(365, 23) / (365^23)
> 
> Uwe Ligges
> 
>> (n=23)

I would put it in an even "safer" form:

n <- 23
prod( ((365-(n-1)):365)/rep(365,n) )

In other word: It evaluates

 (343/365)*(344/365)* ... *(365/365)

365^N --> "Inf" if N > 120, whereas

  n<-150
  prod( ((365-(n-1)):365)/rep(365,n) )
# [1] 2.451222e-16

Best wishes,
Ted.

--------------------------------------------------------------------
E-Mail: (Ted Harding) <Ted.Harding at manchester.ac.uk>
Fax-to-email: +44 (0)870 094 0861
Date: 28-Sep-08                                       Time: 19:09:40
------------------------------ XFMail ------------------------------



More information about the R-help mailing list