Objetivo

Calcular probabilidades y probabilidades acumuladas bajo la fórmula de distribución de Poisson.

Descripción

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 xx 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

Fundamento teórico

Otra variable aleatoria discreta que tiene numerosas aplicaciones prácticas es la variable aleatoria de Poisson. Su distribución de probabilidad da un buen modelo para datos que representa el número de sucesos de un evento especificado en una unidad determinada de tiempo o espacio (Mendenhall, Beaver, and Beaver 2010).

Los experimentos que dan valores numéricos de una variable aleatoria X, el número de resultados que ocurren durante un intervalo dado o en una región específica, se llaman experimentos de Poisson (Walpole, Myers, and Myers 2012)

Esta distribución, suele usarse para estimar el número de veces que sucede un hecho determinado (ocurrencias media) en un intervalo de tiempo o de espacio. Por ejemplo:

Fórmula

\[f(x) = \frac{{e^{ - \mu } \mu ^x }}{{x!}}\]

en donde:

  • \(f(x)\) es la función de probabilidad para valores discretos de \(x=0,1,2,3..,n\)

  • $$ es el valor medio esperado en cierto lapso de tiempo. Algunas veces expresado como \(λ\)

  • \(x\) es la variable aleatoria. Es una variable aleatoria discreta \((x=0,1,2,...)\)

  • \(e\) valor constante, es la base de los logaritmos naturales \(2.71728\) Puede generarse por medio de exp(1).

Propiedades de un evento Poisson:

  • La probabilidad de ocurrencia es la misma para cualquiera de dos intervalos de la misma longitud.

  • La ocurrencia o no ocurrencia en cualquier intervalo es independiente de la ocurrencia o no ocurrencia en cualquier otro intervalo.

Esperanza, varianza y desviación estándard

Los valores de la esperanza (o media) y de la varianza para la distribución de Poisson son respectivamente:

El valor medio o esperanza:

\[E(X) = \lambda\]

La varianza:

\[Var(X) = \sigma^{2} = \lambda\]

La desviación:

\[\sigma = \sqrt{Var(x)} = \sqrt{\sigma^{2}}\]

Desarrollo

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.

Cargar librerías

library(dplyr)
## 
## 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)
library(mosaic) # Gráficos de distribuciones
## 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
options(scipen=999) # Notación normal

# options(scipen=1) # Notación científica

Cargar funciones

#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

Ejercicios

Se describen ejercicios en donde se encuentra la función de distribución

  • Llegada de automóviles a rampa de un cajero

Llegadas de automóviles a rampa de un cajero

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 xx número de automóviles que llegan en un lapso de 15 minutos.

Tabla de probabilidad

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

Gráfica de probabilidad

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.

ggplot(data = tabla2, aes(x,f.prob.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue')

Probabilidad de que lleguen cinco

Si la administración desea saber la probabilidad de que lleguen exactamente \(55\) 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"
  • Utilizando la función dpois() del paquete base de R
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"

Probabilidad de que sea x menor o igual a diez

\(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

Probabilidad con media diferente

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 %"

Valor esperado

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ándard es: 3.1623

Interpretación

Pendiente

Accidentes en industria

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 dia. \(x\) será los valores de la variable aleatoria.

Tabla de distribución

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

Gráfica de probabilidad

ggplot(data = tabla, aes(x,f.prob.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue')

Probabilidad de un accidente al dia

¿Cuál es la probabilidad de que en cualquier periodo dado habrá un accidente en un día?

  • \(P(x=1)\)

  • Recorddar 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

Probabilidad de tres o menos

¿Cuál es la probabilidad de que haya a lo más tres días con un accidente?

  • El indice en la taba comienza en cero
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

Interpretación

Pendiente

Fabricante de automóviles

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λ=5 (walpole_probabilidad_2012?).

La tabla de distribución cuando media igual a 5

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

Gráfica de probabilidades

Se visualiza la tabla de probabilidades

ggplot(tabla, aes(x,f.prob.x) ) +
  geom_point(colour = "red") +
  geom_line(colour = 'blue')

Probabilidad a lo mas tres

¿Cuál es la probabilidad de que, a lo más, 3 automóviles por año sufran una catástrofe?

\[P(X≤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

Probabilidad de mas de uno

¿Cuál es la probabilidad de que más de 1 automóvil por año experimente una catástrofe?\[1−F(X≤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 bie con la función ppois() y la opción lower.tail = FALSE

ppois(q = x, lambda = media, lower.tail = FALSE)
## [1] 0.9595723

Interpretación

Pendiente

Crucero peligroso

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.).

Tabla de probabilidad

Gráfica de probabilidad

Referencias Bibliográficas

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.,.

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.