Descripcion
Calcular la probabilidad de que n personas de un grupo de N tengan celebren su cumpleaños el mismo dia.
Supuestos
- El año tiene 364 dias.
- No tomamos en cuenta año bisiesto.
- El 1 de enero equivale a 1.
- El 31 de diciembre equivale a 364.
- La probabilidad de que una persona nazca cualquier dia del año es uniforme.
library(dplyr)
Calculo para \(N=15\) y \(n \geq 2\)
#set.seed(124)
grupo<-sample(1:364,replace = TRUE,size=15)
grupo_df <- tibble(index=1:15,grupo)
grupo_df
grupo_df %>%
group_by(grupo) %>%
summarise(n=n()) %>%
arrange(desc(n)) %>%
filter(n>1) %>%
nrow()
[1] 0
funcion generadora de grupos
bday_group <- function(x,N=15){
grupo<-sample(1:364,replace = TRUE,size=N)
grupo_df <- tibble(index=1:N,grupo)
grupo_df %>%
group_by(grupo) %>%
summarise(n=n()) %>%
arrange(desc(n)) %>%
filter(n>1) %>%
nrow() %>% return()
}
bday_group()
[1] 0
Calculo de la probabilidad
sim<-
sapply(1:5000,bday_group,N=15)
sum(sim>0)/5000
[1] 0.2588
funcion que genera la probabilidad para un groupo variable
prob_bday <- function(Ngroup,sim=100){
out<-
sapply(1:sim,bday_group,N=Ngroup)
out<- sum(out>0)/sim
return(out)
}
prob_bday(15,1000)
[1] 0.25
prob_vec<-
sapply(2:100, prob_bday,sim=1000)
plot(2:100,prob_vec, type='l',col='red')

tibble(gsize=2:100,prob_vec)
LS0tDQp0aXRsZTogIkJpcnRoZGF5IFBhcmFkb3giDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQojIyBEZXNjcmlwY2lvbg0KDQpDYWxjdWxhciBsYSBwcm9iYWJpbGlkYWQgZGUgcXVlICoqbioqIHBlcnNvbmFzIGRlIHVuIGdydXBvIA0KZGUgKipOKiogdGVuZ2FuIGNlbGVicmVuIHN1IGN1bXBsZWHDsW9zIGVsIG1pc21vIGRpYS4NCg0KIyMgU3VwdWVzdG9zDQoNCiogRWwgYcOxbyB0aWVuZSAzNjQgZGlhcy4NCiogTm8gdG9tYW1vcyBlbiBjdWVudGEgYcOxbyBiaXNpZXN0by4NCiogRWwgMSBkZSBlbmVybyBlcXVpdmFsZSBhIDEuDQoqIEVsIDMxIGRlIGRpY2llbWJyZSBlcXVpdmFsZSBhIDM2NC4NCiogTGEgcHJvYmFiaWxpZGFkIGRlIHF1ZSB1bmEgcGVyc29uYSBuYXpjYSBjdWFscXVpZXIgZGlhIGRlbCBhw7FvIGVzIHVuaWZvcm1lLg0KDQpgYGB7ciBsaWJyYXJpZXN9DQpsaWJyYXJ5KGRwbHlyKQ0KYGBgDQoNCiMjIENhbGN1bG8gcGFyYSAkTj0xNSQgeSAkbiBcZ2VxIDIkDQoNCmBgYHtyfQ0KI3NldC5zZWVkKDEyNCkNCmdydXBvPC1zYW1wbGUoMTozNjQscmVwbGFjZSA9IFRSVUUsc2l6ZT0xNSkNCmdydXBvX2RmIDwtIHRpYmJsZShpbmRleD0xOjE1LGdydXBvKQ0KZ3J1cG9fZGYNCmBgYA0KDQoNCmBgYHtyfQ0KZ3J1cG9fZGYgJT4lDQogIGdyb3VwX2J5KGdydXBvKSAlPiUgDQogIHN1bW1hcmlzZShuPW4oKSkgJT4lIA0KICBhcnJhbmdlKGRlc2MobikpICU+JSANCiAgZmlsdGVyKG4+MSkgJT4lIA0KICBucm93KCkNCiAgDQpgYGANCg0KDQojIyMgZnVuY2lvbiBnZW5lcmFkb3JhIGRlIGdydXBvcw0KDQpgYGB7cn0NCmJkYXlfZ3JvdXAgPC0gZnVuY3Rpb24oeCxOPTE1KXsNCiAgZ3J1cG88LXNhbXBsZSgxOjM2NCxyZXBsYWNlID0gVFJVRSxzaXplPU4pDQogIGdydXBvX2RmIDwtIHRpYmJsZShpbmRleD0xOk4sZ3J1cG8pDQogIGdydXBvX2RmICU+JQ0KICBncm91cF9ieShncnVwbykgJT4lIA0KICBzdW1tYXJpc2Uobj1uKCkpICU+JSANCiAgYXJyYW5nZShkZXNjKG4pKSAlPiUgDQogIGZpbHRlcihuPjEpICU+JSANCiAgbnJvdygpICU+JSByZXR1cm4oKQ0KfQ0KYmRheV9ncm91cCgpDQpgYGANCg0KIyMjIENhbGN1bG8gZGUgbGEgcHJvYmFiaWxpZGFkDQoNCmBgYHtyfQ0Kc2ltPC0NCnNhcHBseSgxOjUwMDAsYmRheV9ncm91cCxOPTE1KQ0KYGBgDQoNCg0KDQpgYGB7cn0NCnN1bShzaW0+MCkvNTAwMA0KYGBgDQoNCg0KIyMjIGZ1bmNpb24gcXVlIGdlbmVyYSBsYSBwcm9iYWJpbGlkYWQgcGFyYSB1biBncm91cG8gdmFyaWFibGUNCg0KYGBge3J9DQpwcm9iX2JkYXkgPC0gZnVuY3Rpb24oTmdyb3VwLHNpbT0xMDApew0KICBvdXQ8LQ0Kc2FwcGx5KDE6c2ltLGJkYXlfZ3JvdXAsTj1OZ3JvdXApDQogIG91dDwtIHN1bShvdXQ+MCkvc2ltDQogIHJldHVybihvdXQpDQp9IA0KcHJvYl9iZGF5KDE1LDEwMDApDQpgYGANCg0KYGBge3J9DQpwcm9iX3ZlYzwtDQpzYXBwbHkoMjoxMDAsIHByb2JfYmRheSxzaW09NTAwKQ0KYGBgDQoNCmBgYHtyfQ0KcGxvdCgyOjEwMCxwcm9iX3ZlYywgdHlwZT0nbCcsY29sPSdyZWQnKQ0KYGBgDQoNCg0KDQpgYGB7cn0NCnRpYmJsZShnc2l6ZT0yOjEwMCxwcm9iX3ZlYykNCmBgYA0KDQoNCg0K