Probabilidad

Poniendo puertas al campo.
distributions
pbinom
ppois
phyper
pgeom
pnorm
qnorm
Author

Román Salmerón Gómez

Published

November 11, 2022

En el post sobre datos aleatorios se comentaba que se puede trabajar en R sin mayores problemas con las distribuciones más conocidas. Si en ese momento se generaban datos pseudoaleatorios, a continuación se va a ver cómo calcular probabilidades en cada caso.

A continuación se muestran algunos ejemplos en los que hay que tener presentes que en todo momento se calcula la probabilidad según la función de distribución, es decir, \(P[X \leq x]\) donde \(X\) seguirá una distribución concreta.

Distribución binomial

\(P[X \leq 2]\) siendo \(X\) una binomial de parámteros \(n = 20\) y \(p = 0.15\):

pbinom(2, 20, 0.15) 
[1] 0.4048963

\(P[X \geq 4]\) siendo \(X\) una binomial de parámteros \(n = 50\) y \(p = 0.15\):

1 - pbinom(3, 50, 0.15) 
[1] 0.9539534

\(P[X=4]\), \(P[X=1]\) y \(P[X=0]\) siendo \(X\) una binomial de parámteros \(n = 4\) y \(p = 0.2\):

pbinom(4, 4, 0.2) - pbinom(3, 4, 0.2)
[1] 0.0016
pbinom(1, 4, 0.2) - pbinom(0, 4, 0.2)
[1] 0.4096
pbinom(0, 4, 0.2)
[1] 0.4096

Distribución de Poisson

\(P[X \leq 7]\) siendo \(X\) una Poisson de parámtero \(\lambda = 5\):

ppois(7, 5)
[1] 0.8666283

\(P[X \geq 6]\) siendo \(X\) una Poisson de parámtero \(\lambda = 15\):

1 - ppois(5, 15)
[1] 0.9972076

\(P[X = 9]\) siendo \(X\) una Poisson de parámtero \(\lambda = 10\):

ppois(9, 10) - ppois(8, 10)
[1] 0.12511

Otras opciones son las disribuciones hipergeométrica (comando phyper) o geométrica (comando pgeom).

Distribución Normal

En el caso de la distribución normal, dada su relevancia, la estudiaremos con algo más de detalle. El comando es el siguiente:

pnorm(q, mean = 0, sd = 1, lower.tail = TRUE, log.p = FALSE)

En este caso:

  • q es el cuantil que determina la probabilidad.
  • mean y sd son la media y desviación típica de la distribución normal para la que se calcula la probabilidad (por defecto, se calcula la probabilidad en una normal de media cero y varianza uno).
  • lower.tail indica qué probabilidad se calcula: si es igual a cierto (valor por defecto), se calcula \(P[X \leq x]\); en caso contrario, valor igual a falso, \(P[X > x]\).

ASí, \(P[X \leq 7]\) siendo \(X\) una normal de media 5 y varianza 4:

pnorm(7, 5, 2)
[1] 0.8413447

\(P[X \geq 2]\) siendo \(X\) una normal de media 0 y varianza 1:

1 - pnorm(2)
[1] 0.02275013
pnorm(2, lower.tail = F)
[1] 0.02275013

\(P[X \leq 6]\) siendo \(X\) una normal de media 10 y varianza 10:

pnorm(6, 10, sqrt(10))
[1] 0.1029516

De forma análoga, los cuantiles se calculan a partir del comando:

qnorm(p, mean = 0, sd = 1, lower.tail = TRUE, log.p = FALSE)

Los argumentos son los mismos de antes, excepto que en este caso mediante p se especifica la probabilidad que determina el cuantil.

Los cuantiles tradicionales se calcularían como sigue:

qnorm(0.95)
[1] 1.644854
qnorm(0.975)
[1] 1.959964
qnorm(0.995)
[1] 2.575829

Para finalizar, podéis visitar la web https://www.ugr.es/~romansg/material/WebTC1/index.html para cotillear sobre R y probabilidad.