Learn R Programming

IPSUR (version 0.1-2)

birthday.ipsur: Probability of coincidences for the IPSUR package

Description

This is a modified version of the pbirthday and qbirthday functions in the stats package. Computes approximate answers to a generalised birthday paradox problem. pbirthday.ipsur computes the probability of a coincidence and qbirthday.ipsur computes the number of observations needed to have a specified probability of coincidence. The change is that precise answers are given (instead of asymptotics) in the case of exactly two coincidences.

Usage

qbirthday.ipsur(prob = 0.5, classes = 365, coincident = 2)
pbirthday.ipsur(n, classes = 365, coincident = 2)

Arguments

classes
How many distinct categories the people could fall into
prob
The desired probability of coincidence
n
The number of people
coincident
The number of people to fall in the same category

Value

  • qbirthday.ipsurNumber of people needed for a probability prob that k of them have the same one out of classes equiprobable labels.
  • pbirthday.ipsurProbability of the specified coincidence.

Details

The birthday paradox is that a very small number of people, 23, suffices to have a 50-50 chance that two of them have the same birthday. This function generalises the calculation to probabilities other than 0.5, numbers of coincident events other than 2, and numbers of classes other than 365. The formula is approximate, except in the case coincident=2.

References

Diaconis P, Mosteller F., Methods for studying coincidences. JASA 84:853-861

Examples

Run this code
## the standard version
qbirthday.ipsur()
 ## same 4-digit PIN number
qbirthday.ipsur(classes=10^4)
 ## 0.9 probability of three coincident birthdays
qbirthday.ipsur(coincident=3, prob=0.9)
## Chance of 4 coincident birthdays in 150 people
pbirthday.ipsur(150,coincident=4)
## 100 coincident birthdays in 1000 people: *very* rare:
pbirthday.ipsur(1000, coincident=100)

Run the code above in your browser using DataLab