Given a room with n people in it, what is the probability any two will have the same birthday?

January 31, 2012

(This article was first published on Jason Bryer » R, and kindly contributed to R-bloggers)

Revisiting a fun puzzle I remember first encountering as an undergraduate. Nice example of creating a plot in R using ggplot2. I also plot the probability of someone in the room having the same birthday as you.

## See for an explanation of the problem


birthday <- function(n) {
1 - exp( - n^2 / (2 * 365) )

myBirthday <- function(n) {
1 - ( (365 - 1) / 365 ) ^ n

d = 200
df = data.frame(n=1:d, AnyTwoSame=birthday(1:d), SameAsMine=myBirthday(1:d))
df = melt(df, id.vars='n')

ggplot(df, aes(x=n, y=value, colour=variable)) + geom_line() + scale_colour_hue('') +
xlab('Number of People in Group') + ylab('Probability')

To leave a comment for the author, please follow the link and comment on their blog: Jason Bryer » R. offers daily e-mail updates about R news and tutorials on topics such as: visualization (ggplot2, Boxplots, maps, animation), programming (RStudio, Sweave, LaTeX, SQL, Eclipse, git, hadoop, Web Scraping) statistics (regression, PCA, time series, trading) and more...

If you got this far, why not subscribe for updates from the site? Choose your flavor: e-mail, twitter, RSS, or facebook...


Comments are closed.