# Universidad Autónoma de Aguascalientes # Licenciatura en Matemáticas Aplicadas # Probabilidad # ========================= # Programa: Prac02.R # Autor: Paul Ramírez De la Cruz # Fecha # Creación: 26 de febrero de 2007 # Modificación: 26 de febrero de 2007 # Descripción: Cálculo de probabilidades de la distribución binomial # Gráficas de barras para distribuciones discretas # ========================= # ================================================== # -------------------------------------------------- # Funciones definidas # -------------------------------------------------- # ------------------------- # Función binProb # Autor: Paul Ramírez de la Cruz # Fecha # Creación: 26 de febrero de 2007 # Modificación: 26 de febrero de 2007 # Parámetros: n: Número de ensayos Bernoulli # p: Probabilidad de éxito en cada ensayo # Descripción: Devuelve un vector que contiene P(X = x) para x = 0,1,...,n # para n y p dados # ------------------------- binProb <- function(n,p) { bp <- NULL for (x in 0:n) bp <- c(bp,dbinom(x,n,p)) return(bp) } # ************************* # -------------------------------------------------- # Fin de las funciones definidas # -------------------------------------------------- # ================================================== # -------------------------------------------------- # Programa principal # -------------------------------------------------- # Cálculo de las probabilidades b(x;n,p) para n = 2,5,10,50,100,200 y # p = 0.1,0.4,0.5,0.6,0.9, x = 0,...,n n <- c(2,5,10,50,100,200) # Ejemplo 1: # p = 0.1, n = 2 p <- c(0.1,0.4,0.5,0.6,0.9) biprob <- binProb(n[1],p[1]) barplot(biprob,col="blue",main="n = 2, p = 0.1",xlab="Éxitos",ylab="Probabilidad") # Ejemplo 2: # p = 0.1, n = 2,...,200 # Uso de par(mfrow=...) # Se toma nota del número de componentes en n k <- 6 # Dividimos la gráfica en k partes par(mfrow=c(2,3)) for (i in 1:k) { biprob <- binProb(n[i],p[1]) titulo <- paste("n = ",n[i],", p = ",p[1],sep="") barplot(biprob,col="blue",main=titulo,xlab="Éxitos",ylab="Probabilidad") } # Se vuelve a establecer una sola gráfica por "hoja" par(mfrow=c(1,1)) # Ejemplo 3: # p = 0.1,0.4,...,0.9; n = 2,...,200 # Se toma nota del número de componentes en p y n k <- 6 # Elementos en n m <- 5 # Elementos en p # Dividimos la gráfica en k partes par(mfrow=c(2,3)) for (j in 1:m) { for (i in 1:k) { biprob <- binProb(n[i],p[j]) titulo <- paste("n = ",n[i],", p = ",p[j],sep="") barplot(biprob,col="blue",main=titulo,xlab="Éxitos",ylab="Probabilidad") } windows() # Abre una ventana nueva para gráficas par(mfrow=c(2,3)) } # Se vuelve a establecer una sola gráfica por "hoja" par(mfrow=c(1,1))