Identificar los valores de la función de probabilidad bajo la fórmula de distribución de Poisson.
Realizar distribuciones de probabilidad conforme a la distribución de probabilidad de Poisson a partir devalores iniciales dado en cada ejercicio.
Se generan las tablas de probabilidad conforme a distribución Poisson, se identifican los valores de probabilidad cuando la variable discreta \(x\)tenga algún exactamente algún valor, \(≤\) a algún valor o > o ≥ entre otros.
Se utilizan las funciones dpois() para la función de probabilidad o densidad y ppois() para la probabilidad acumulada.
También se utiliza la función f.prob.poisson() que ha sido programada con anticipación y calcula la probabilidad de un valor de variable aleatoria discreta. Esta función se encuentra en el enlace: https://github.com/rpizarrog/probabilidad-y-estad-stica/blob/master/funciones/funciones.distribuciones.r
El desarrollo de los ejercicios comienza con la carga de librerías luego una serie de ejercicios relacionados con la distribución de Poisson, de cada uno de ellos se muestra la tabla de probabilidad se calculan algunas de sus probabilidades y se determina la esperanza, la varianza y las desviaciones. Al final se busca la interpretación de cada ejercicio.
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.0.4
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.0.4
library(mosaic) # Gráficos de distribuciones
## Warning: package 'mosaic' was built under R version 4.0.5
## Registered S3 method overwritten by 'mosaic':
## method from
## fortify.SpatialPolygonsDataFrame ggplot2
##
## The 'mosaic' package masks several functions from core packages in order to add
## additional features. The original behavior of these functions should not be affected by this.
##
## Attaching package: 'mosaic'
## The following object is masked from 'package:Matrix':
##
## mean
## The following object is masked from 'package:ggplot2':
##
## stat
## The following objects are masked from 'package:dplyr':
##
## count, do, tally
## The following objects are masked from 'package:stats':
##
## binom.test, cor, cor.test, cov, fivenum, IQR, median, prop.test,
## quantile, sd, t.test, var
## The following objects are masked from 'package:base':
##
## max, mean, min, prod, range, sample, sum
library(cowplot) #Imágenes en el mismo renglón
## Warning: package 'cowplot' was built under R version 4.0.5
##
## Attaching package: 'cowplot'
## The following object is masked from 'package:mosaic':
##
## theme_map
options(scipen=999) # Notación normal
# options(scipen=1) # Notación científica
#source("../funciones/funciones.distribuciones.r")
# o
source("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/funciones/funciones.distribuciones.r")
##
## Attaching package: 'gtools'
## The following object is masked from 'package:mosaic':
##
## logit
Se describen ejercicios en donde se encuentra la función de distribución
Suponga que desea saber el número de llegadas, en un lapso de 15 minutos, a la rampa del cajero automático de un banco.(anderson_estadistica_2008?)
Si se puede suponer que la probabilidad de llegada de los automóviles es la misma en cualesquiera de dos lapsos de la misma duración y si la llegada o no–llegada de un automóvil en cualquier lapso es independiente de la llegada o no–llegada de un automóvil en cualquier otro lapso, se puede aplicar la función de probabilidad de Poisson.
Dichas condiciones se satisfacen y en un análisis de datos pasados encuentra que el número promedio de automóviles que llegan en un lapso de 15 minutos es igual a 10;
Aquí la variable aleatoria es \(x\) número de automóviles que llegan en un lapso de 15 minutos.
Valores iniciales
x <- 0:30 # Valores de variables aleatorias
media <- 10 # Llegada de automóviles
Se construye la tabla con la función cargada del enlace: https://github.com/rpizarrog/probabilidad-y-estad-stica/blob/master/funciones/funciones.distribuciones.r
tabla1 <- data.frame(x=x, f.prob.x = f.prob.poisson(media, x))
tabla1 <- cbind(tabla1, f.acum.x = cumsum(tabla1$f.prob.x))
tabla1
## x f.prob.x f.acum.x
## 1 0 0.0000453999298 0.00004539993
## 2 1 0.0004539992976 0.00049939923
## 3 2 0.0022699964881 0.00276939572
## 4 3 0.0075666549604 0.01033605068
## 5 4 0.0189166374010 0.02925268808
## 6 5 0.0378332748021 0.06708596288
## 7 6 0.0630554580035 0.13014142088
## 8 7 0.0900792257192 0.22022064660
## 9 8 0.1125990321490 0.33281967875
## 10 9 0.1251100357211 0.45792971447
## 11 10 0.1251100357211 0.58303975019
## 12 11 0.1137363961101 0.69677614630
## 13 12 0.0947803300918 0.79155647639
## 14 13 0.0729079462244 0.86446442262
## 15 14 0.0520771044460 0.91654152707
## 16 15 0.0347180696307 0.95125959670
## 17 16 0.0216987935192 0.97295839022
## 18 17 0.0127639961878 0.98572238640
## 19 18 0.0070911089932 0.99281349540
## 20 19 0.0037321626280 0.99654565802
## 21 20 0.0018660813140 0.99841173934
## 22 21 0.0008886101495 0.99930034949
## 23 22 0.0004039137043 0.99970426319
## 24 23 0.0001756146541 0.99987987785
## 25 24 0.0000731727725 0.99995305062
## 26 25 0.0000292691090 0.99998231973
## 27 26 0.0000112573496 0.99999357708
## 28 27 0.0000041693887 0.99999774647
## 29 28 0.0000014890674 0.99999923553
## 30 29 0.0000005134715 0.99999974900
## 31 30 0.0000001711572 0.99999992016
Se construye la tabla2 con las funciones dpois() y ppois() , los valores deben ser los mismos que la tabla1.
tabla2 <- data.frame(x=x, f.prob.x = dpois(x = x, lambda = media))
tabla2 <- cbind(tabla2, f.acum.x = ppois(q = x, lambda = media))
tabla2
## x f.prob.x f.acum.x
## 1 0 0.0000453999298 0.00004539993
## 2 1 0.0004539992976 0.00049939923
## 3 2 0.0022699964881 0.00276939572
## 4 3 0.0075666549604 0.01033605068
## 5 4 0.0189166374010 0.02925268808
## 6 5 0.0378332748021 0.06708596288
## 7 6 0.0630554580035 0.13014142088
## 8 7 0.0900792257192 0.22022064660
## 9 8 0.1125990321490 0.33281967875
## 10 9 0.1251100357211 0.45792971447
## 11 10 0.1251100357211 0.58303975019
## 12 11 0.1137363961101 0.69677614630
## 13 12 0.0947803300918 0.79155647639
## 14 13 0.0729079462244 0.86446442262
## 15 14 0.0520771044460 0.91654152707
## 16 15 0.0347180696307 0.95125959670
## 17 16 0.0216987935192 0.97295839022
## 18 17 0.0127639961878 0.98572238640
## 19 18 0.0070911089932 0.99281349540
## 20 19 0.0037321626280 0.99654565802
## 21 20 0.0018660813140 0.99841173934
## 22 21 0.0008886101495 0.99930034949
## 23 22 0.0004039137043 0.99970426319
## 24 23 0.0001756146541 0.99987987785
## 25 24 0.0000731727725 0.99995305062
## 26 25 0.0000292691090 0.99998231973
## 27 26 0.0000112573496 0.99999357708
## 28 27 0.0000041693887 0.99999774647
## 29 28 0.0000014890674 0.99999923553
## 30 29 0.0000005134715 0.99999974900
## 31 30 0.0000001711572 0.99999992016
Con la función ggplot() se hace la curva de la distribución, en rojo los puntos y en azul la curva o linea con cualquiera de las dos tablas, tabla1 o tabla2.
En g1 se construye la gráfica de densidad \(P(x)\) y en g2 se construye la gráfica de a probabilidad acumulada \(F(x)\). Las dos gráficas se construyen.
g1 <- ggplot(data = tabla2, aes(x,f.prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Función de densidad P(x)")
#g1
g2 <- ggplot(data = tabla2, aes(x,f.acum.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Función acumulada F(x)")
#g2
plot_grid(g1, g2)
Si la administración desea saber la probabilidad de que lleguen exactamente \(5\) automóviles en 15 minutos, \(P(x=5)\).
Utlizando la función f.prob.poisson() creada que se encuentra en el enlace https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/funciones/funciones.distribuciones.r y calcula la función de probabilidad conforme a la fórmula.
x <- 5
prob <- round(f.prob.poisson(media, x),8)
paste("La probabilidad de que sean exactamente 5 automóviles es de : ", prob)
## [1] "La probabilidad de que sean exactamente 5 automóviles es de : 0.03783327"
prob2 <- round(dpois(x = x, lambda = media),4)
paste("La probabilida de que sean exactamente 5 automóviles es de : ", prob2)
## [1] "La probabilida de que sean exactamente 5 automóviles es de : 0.0378"
\(P(x≤10)=P(x=0)+P(x=1)+P(x=2)+P(x=3)+...+P(x=10)\) o la probabilidad acumulada hasta \(10\) \(F(x=10)\)
tabla1$f.acum[10+1]
## [1] 0.5830398
paste("La probabilidad de que el valor de x sea menor o igual a 10 es: ", tabla1$f.acum[10+1], " o ", round(tabla1$f.acum[10+1] * 100,4), "%" )
## [1] "La probabilidad de que el valor de x sea menor o igual a 10 es: 0.583039750192986 o 58.304 %"
Con ppois() que determina el valor acumulado
ppois(q = 10, lambda = media)
## [1] 0.5830398
con la función sum() y dpois()
sum(dpois(x = 0:10, lambda = media))
## [1] 0.5830398
En el ejemplo anterior se usó un lapso de 15 minutos, pero también se usan otros lapsos. Suponga que desea calcular la probabilidad de una llegada en un lapso de 3 minutos.
Regla de tres:
\[10=15\]
\[ ?=3 \]
media <- (3 * 10) / 15
media
## [1] 2
Entonces, la probabilidad de \(x\) llegadas en un lapso de 3 minutos tiene una media \(μ=2\) está dada por la siguiente nueva función de probabilidad de Poisson.
\[f(x) = \frac{{e^{ - 2} 2^x }}{{x!}}\]Entonces nueva probabilidad para cuando \(x=5\)
prob <- round(dpois(x = 5, lambda = 2),4)
paste("La probabilidad cuando x = 5 y media igual a 2 es del:", prob * 100, "%")
## [1] "La probabilidad cuando x = 5 y media igual a 2 es del: 3.61 %"
La esperanza o valor esperado es igual a: \(10\) dado los valores iniciales del ejercicio
Varianza y desviación
La varianza es \(10\) y la desviación estándar es: 3.1623
En este ejercicio se pudo utilizar la probabilidad de Possion debido a que la posibilidad de que un vehículo llegue o no son independientes entre ellos dos; al realizar las tablas y gráficas nos queda de manera más explícita y entendible de los valores calculados. Ya después de tener los valores de cada una de las posibilidades (de que lleguen de 0 a 30 vehículos) podemos empezar a buscar valores deseados, como el chance de que lleguen cinco vehículos (un valor específico), o un rango de opciones como el de que la llegada de vehículos sea menor o igual a 10 (la frecuencia acumulada de 0 a 10).
En ciertas instalaciones industriales los accidentes ocurren con muy poca frecuencia. Se sabe que la probabilidad de un accidente en cualquier día dado es \(0.005\) y los accidentes son independientes entre sí (walpole_probabilidad_2012?). La variable media es el números de accidentes promedio por día. \(x\) será los valores de la variable aleatoria.
Valores iniciales
n <- 365 # Dias del año
prob <- 0.005
media <- n * prob # media al año
media <- round(media, 0)
media
## [1] 2
x <- 0:10
La media es 2
La variable aleatoria son los dias desde \(x=1\)…hasta \(x=n\)
La tabla de distribución de probablidad de Poisson con media igual a 2 usando dpois() y cumsum()
tabla <- data.frame(x=x, f.prob.x = round(dpois(x = x, lambda = media),4))
tabla <- cbind(tabla, f.acum.x = cumsum(tabla$f.prob.x))
tabla
## x f.prob.x f.acum.x
## 1 0 0.1353 0.1353
## 2 1 0.2707 0.4060
## 3 2 0.2707 0.6767
## 4 3 0.1804 0.8571
## 5 4 0.0902 0.9473
## 6 5 0.0361 0.9834
## 7 6 0.0120 0.9954
## 8 7 0.0034 0.9988
## 9 8 0.0009 0.9997
## 10 9 0.0002 0.9999
## 11 10 0.0000 0.9999
Se construyen tanto la gráfica de densidad (lado izquierdo) como la gráfica de función acumulada (lado derecho).
g1 <- ggplot(data = tabla, aes(x,f.prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Función de densidad P(x)")
#g1
g2 <- ggplot(data = tabla, aes(x,f.acum.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Función acumulada F(x)")
#g2
plot_grid(g1, g2)
¿Cuál es la probabilidad de que en cualquier periodo dado habrá un accidente en un día?
\(P(x=1)\)
Recordar que el índice de la tabla empieza en el valor cero de tal forma que se necesita el siguiente valor \(x+1\) en la tabla:
x <- 1
prob <- tabla$f.prob.x[x+1]
paste("La probabiidad del valor de x=1 es: ", prob)
## [1] "La probabiidad del valor de x=1 es: 0.2707"
o mediante la función dpois() y
dpois(x = 1, lambda = media)
## [1] 0.2706706
¿Cuál es la probabilidad de que haya a lo más tres días con un accidente?
x <- 3
prob <- tabla$f.acum.x[x+1]
paste("La probabiidad del valor de x<=3 es: ", prob)
## [1] "La probabiidad del valor de x<=3 es: 0.8571"
Función acumulada \(F(x=3)\) o lo que es lo mismo \(P(x=0)+P(x=1)+P(x=2)+P(x=3)\)
ppois(q = 3, lambda = media)
## [1] 0.8571235
En este caso la probabilidad de éxito es la probabilidad de que suceda un accidente en algún día y estos no influyen en la probabilidad del siguiente accidente (así que podemos hacerlo por distribuciones de Poisson), se calculó en base a los 365 días del año, para saber cuál es la cantidad de accidentes que pueden suceder. Se calculó la cantidad de accidentes que podrían pasar y también en específico la probabilidad de que suceda un accidente al día que es la probabilidad base: 0.2707; luego con la función ppois se calculó la probabilidad de que sucediese un accidente a lo largo de tres días, mostrando como resultado que está casi asegurado que sí suceda un accidente, pues se obtuvo un valor de 0.8571 u 85.71%.
Un fabricante de automóviles se preocupa por una falla en el mecanismo de freno de un modelo específico. La falla puede causar en raras ocasiones una catástrofe a alta velocidad. Suponga que la distribución del número de automóviles por año que experimentará la falla es una variable aleatoria de Poisson con \(λ=5\) (walpole_probabilidad_2012?).
Se construye la tabla de distribución de veinte valores en variable aleatoria y media igual a cinco.
x <- 0:20
media <- 5
tabla <- data.frame(x=x, f.prob.x = round(dpois(x = x, lambda = media),8), f.acum.x = round(ppois(q = x, lambda = media), 8))
tabla
## x f.prob.x f.acum.x
## 1 0 0.00673795 0.00673795
## 2 1 0.03368973 0.04042768
## 3 2 0.08422434 0.12465202
## 4 3 0.14037390 0.26502592
## 5 4 0.17546737 0.44049329
## 6 5 0.17546737 0.61596065
## 7 6 0.14622281 0.76218346
## 8 7 0.10444486 0.86662833
## 9 8 0.06527804 0.93190637
## 10 9 0.03626558 0.96817194
## 11 10 0.01813279 0.98630473
## 12 11 0.00824218 0.99454691
## 13 12 0.00343424 0.99798115
## 14 13 0.00132086 0.99930201
## 15 14 0.00047174 0.99977375
## 16 15 0.00015725 0.99993099
## 17 16 0.00004914 0.99998013
## 18 17 0.00001445 0.99999458
## 19 18 0.00000401 0.99999860
## 20 19 0.00000106 0.99999965
## 21 20 0.00000026 0.99999992
Se visualizan la gráficas
g1 <- ggplot(data = tabla, aes(x,f.prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Función de densidad P(x)")
#g1
g2 <- ggplot(data = tabla, aes(x,f.acum.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Función acumulada F(x)")
#g2
¿Cuál es la probabilidad de que, a lo más, 3 automóviles por año sufran una catástrofe?
\[ P(X \leq 3) \]
\[ P(X=0) + P(X=1) + P(X=2) + P(X=3) \]
x <- 3
prob <- tabla$f.acum.x[x+1]
paste("La probabiidad del valor de x<=3 es: ", round(prob * 100,4), "%")
## [1] "La probabiidad del valor de x<=3 es: 26.5026 %"
o por medio de la función ppois()
ppois(q = 3, lambda = media)
## [1] 0.2650259
¿Cuál es la probabilidad de que más de 1 automóvil por año experimente una catástrofe?
\[1 - F(X \leq 1) \]
\[1 - (P(X=0) + P(x=1))\]
x <- 1
prob <- 1 - tabla$f.acum.x[x+1]
paste("La probabiidad del valor de x>1 es: ", round(prob * 100,4), "%")
## [1] "La probabiidad del valor de x>1 es: 95.9572 %"
o bien con la función ppois() y la opción lower.tail = FALSE
ppois(q = x, lambda = media, lower.tail = FALSE)
## [1] 0.9595723
En este el caso de éxito para la distribución de Poisson es que el mecanismo de freno de un modelo específico de vehículo falle con una media de 5. El análisis se realizó en base a 20 datos generados al azar; después de eso se generó la tabla de probabilidades y sus respectivas gráficas, mostrando la Función de densidad y la Función acumulada. Después de ello se calculó la probabilidad de que como máximo tres vehículos sufran una catástrofe, sumando la probabilidad desde que no ocurra ninguno (cero) hasta tres accidentes, consiguiendo como resultado que hay un 26.5026 % de posibilidades de que sucedan entre cero y tres accidentes catastróficos debido a esos vehículos defectuosos y finalmente se calculó la posibilidad de que suceda más de un accidente, simplemente restandole a la probabilidad completa (1) la probabilidad de que sucedan cero a un accidente, consiguiendo como resultado que hay un 95.9572 % de probabilidades de que sucedan más de un accidente al año debido a esos vehículos
Supóngase que se está investigando la seguridad de un crucero muy peligroso. Los archivos de la policía indican una media de cinco \(λ=5\) accidentes por mes en el crucero.
El número de accidentes está distribuido conforme a la distribución de Poisson, y la división de seguridad en carreteras quiere calcular la probabilidad de exactamente \(0,1,2,3\) y \(4\) accidentes en un mes determinado (gestiopolis, n.d.).
Valores iniciales
x <- 0:10
media <- 5
onstruyendo los valores de la tabla de distribución \(P(x=0,1,2…10)\). Para responder a la pregunta del ejercicio, solo interesan solo los valores \(P(0), P(1), P(2), P(3), P(4)\)
tabla <- data.frame(x = x, f.prob.x = dpois(x = x, lambda = media), f.acum.x = ppois(q = x, lambda = media))
tabla
## x f.prob.x f.acum.x
## 1 0 0.006737947 0.006737947
## 2 1 0.033689735 0.040427682
## 3 2 0.084224337 0.124652019
## 4 3 0.140373896 0.265025915
## 5 4 0.175467370 0.440493285
## 6 5 0.175467370 0.615960655
## 7 6 0.146222808 0.762183463
## 8 7 0.104444863 0.866628326
## 9 8 0.065278039 0.931906365
## 10 9 0.036265577 0.968171943
## 11 10 0.018132789 0.986304731
Se construyen las gráficas de densidad o valores de probabilidad de cada variable aleatoria discreta y la función de la probabilidad acumulada respectivamente.
g1 <- ggplot(data = tabla, aes(x,f.prob.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Función de densidad P(x)")
#g1
g2 <- ggplot(data = tabla, aes(x,f.acum.x) ) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Función acumulada F(x)")
#g2
plot_grid(g1, g2)
En este caso se buscan cinco eventos específicos, que sucedan \(0,1,2,3,4\) en un crucero catalogado como peligroso, mostrando como resultados que hay un 0.67% de probabilidades de que no suceda algún accidente, un 3.36% de que suceda un accidente, un 8.42% de que se generen dos accidentes, un 14.03% de que acontezcan tres accidentes y finalmente un 17.54% de que sucedan cuatro accidentes y teniendo como frecuencia acumulada un 44.04% de que sucedan entre cero y cuatro accidentes en ese crucero al mes.
Supóngase que en un hotel donde descansan sufridos cazadores de elefantes ocurren de manera aleatoria e independiente dos accidentes de caídas con rompimiento de cadera por semana. Determinar la probabilidad de que ocurra un accidente en una semana (Quintela 2019b) \(λ=2\) se necesita calcular \(P(x=1)\)
paste("La probabilidad de ocurra un accidente en una semana es : ", dpois(x = 1, lambda = 2) ," o ", round(dpois(x = 1, lambda = 2) * 100, 2), "%")
## [1] "La probabilidad de ocurra un accidente en una semana es : 0.270670566473225 o 27.07 %"
En este último caso únicamente hay que resaltar el caso de éxito es el que ocurra un accidente de caída con rompimiento de cadera, teniendo como promedio que suceden dos accidentes a la semana, aquí solamente se buscó la probabilidad de que sucediera solo un accidente a la semana, dando como resultado 0.2706 o 27.06%.
Anderson, David R., Dennis J. Sweeney, and Thomas A. Williams. 2008. Estadística Para Administración y Economía. 10th ed. Australia Brasil Corea España Estados Unidos Japón México Reino Unido Singapur: Cengage Learning,.
gestiopolis. n.d. “¿Qué Es La Distribución de Poisson?” https://www.gestiopolis.com/que-es-la-distribucion-de-poisson/.
Mendenhall, William, Robert J. Beaver, and Barbara M. Beaver. 2010. Introducción a La Probabilidad y Estadística. 13th ed. Cengage Learning Editores, S.A. de C.V.,.
Quintela, Alejandro. 2019a. Estadística básica Edulcorada. https://bookdown.org/aquintela/EBE/.
———. 2019b. Estadística básica Edulcorada. https://bookdown.org/aquintela/EBE/.
Walpole, Ronald E., Raymond H. Myers, and Sharon L. Myers. 2012. Probabilidad y Estadística Para Ingeniería y Ciencias. Novena Edición. México: Pearson.