Utilizar funciones de una distribución T Student para calcular función de densidad, probabilidades e identificar valores de t e intervalo de confianza.
En el sustento teórico, se da a conocer un panorama de la importancia de la distribución T Student comparando la campana de gauss de una distribución normal estándar y distribuciones t; se identifica la fórmula de densidad t y se mencionan las funciones de paquete base de R: dt(), pt(), qt y rt() y la función xpt() y visualize.t de la librería mosaic y visualize() para graficar T Student y para el tratamiento de este tipo de distribuciones. . [@t_distribution_t_nodate]
De igual forma el caso ofrece visualización de T Student mediante gráficos programados usando funciones de la librería ggplot2().
En el desarrollo, se resuelven e interpretan algunos ejercicios con datos bajo la distribución T Student,, se identifican intervalos de confianza con de una distribución T Student.
La T Student tiene estas características:
Tiene forma de montículo o campana de gauss y es simétrica alrededor de \(t = 0\), igual que \(z\) la normal estándar.
Es más variable que \(z\), con “colas más pesadas”; esto es, la curva \(t\) no aproxima al eje horizontal con la misma rapidez que \(z\). Esto es porque el estadístico \(t\) abarca dos cantidades aleatorias, \(\bar{x}\) y \(s\), en tanto que el estadístico \(z\) tiene sólo la media muestral, \(\bar{x}\). Ver curvas de T Student y Normal Estándar \(z\).
La forma de la distribución \(t\) depende del tamaño muestral \(n\). A medida que \(n\) aumenta, la variabilidad de \(t\) disminuye porque la estimación \(s\) de \(\sigma\) está basada en más y más información.
Cuando \(n\) sea infinitamente grande, las distribuciones \(t\) y \(z\) son idénticas. [@mendenhall2010].
Al igual que otras distribuciones como la binomial, Poisson uniforme, normal, entre otras, se disponen de las funciones dt(), pt(), qt() y rt() para el tratamiento de distribuciones T Student.
El número de grados de libertad es igual al tamaño de la muestra \(n\) (número de observaciones independientes) menos 1 . [@estadística2016]
\[ gl = df = (n – 1) \\ \therefore \\ df = \text{grados de libertad} \\ n = \text{total de elementos de la muestra de t} \]
El divisor \((n-1)\) en la fórmula para la varianza muestral \(s^2 = \sum(\frac{x_i-\bar{x}}{n-1})\) se denomina número de grados de libertad (df) asociado con \(s^2\) determina la forma de la distribución \(t\). El origen del término grados de libertad es teórico y se refiere al número de desviaciones independientes elevadas al cuadrado en \(s^2\) existentes para estimar \(\sigma^2\).
Estos grados de libertad pueden cambiar para diferentes aplicaciones y como especifican la distribución t correcta a usar, es necesario recordar que hay que calcular los grados de libertad correctos para cada aplicación. [@mendenhall2010].
Si la muestra tiene un valor de \(t\) en el rango del nivel de confianza entonces se acepta la hipótesis de lo contrario de rechaza.
Se cargan librerías usadas a lo largo del caso.
{r message=FALSE, warning=FALSE} library(dplyr) library(mosaic) library(ggplot2) # Para gráficos library(cowplot) #Imágenes en el mismo renglón library(visualize) options(scipen=999) # Notación normal
{r message=FALSE, warning=FALSE} source ("https://raw.githubusercontent.com/rpizarrog/probabilidad-y-estad-stica/master/2023/funciones/funciones%20para%20disribuciones%20de%20probabilidad.R")
\[ f(x) = \frac{\frac{\gamma(gl + 1)}{2}}{\sqrt(gl \cdot \pi)\cdot \gamma(gl/2)} \cdot (1 + \frac{t^2}{gl})^{\frac{-(gl+1)}{2}} \therefore \]
\[ f(x) = \frac{\frac{gamma(gl + 1)}{2}}{\sqrt(gl \cdot \pi)\cdot gamma(gl/2)} \cdot (1 + \frac{t^2}{gl})^{\frac{-(gl+1)}{2}} \therefore \]
La función gamma en r se calcula mediante gamma() que asocia con el concepto factorial a los números reales y complejos. Es una integral … MMMmmm
\[ \gamma(z) = \int\limits_{0}^{\infty}t^{(z-1)}\cdot e^{-t}dt \]
¿Cuál es el valor de la densidad para un valor de t igual 0 en una t student con una muestra de 25 observaciones?
```{r echo=TRUE} n <- 25 gl <- n-1 t <- 0
f_dens_t <- gamma((gl + 1) / 2) / ((sqrt(gl * pi)) * gamma(gl / 2)) * (1 + t2/gl)(-(gl + 1) / 2) f_dens_t
### Usando dt()
Más fácil y amigable
```{r echo=TRUE}
dt(x = t, df = gl)
¿Cuál es el valor de la densidad para un valor de t igual -1 en una t student con una muestra de 25 observaciones?
Manualmente usando fórmula de densidad t student
```{r echo=TRUE} n <- 25 gl <- n-1 t <- -1
f_dens_t <- gamma((gl + 1) / 2) / ((sqrt(gl * pi)) * gamma(gl / 2)) * (1 + t2/gl)(-(gl + 1) / 2) f_dens_t
### Usando dt(x = -1, df = gl)
Más fácil y amigable
```{r echo=TRUE}
dt(x = t, df = gl)
Ahora bien varios valores para distintos valores de t entre negativos y positivos a partir de una secuencia desde \(-3\) a \(3\) con saltos de \(0.5\).
```{r echo=TRUE} t <- seq(from = -3, to = 3, by = 0.5) t
print(“Calculando manualmente con función gamma()”) f_dens_t <- gamma((gl + 1) / 2) / ((sqrt(gl * pi)) * gamma(gl / 2)) * (1 + t2/gl)(-(gl + 1) / 2) f_dens_t
### Usando dt varios valores de t
```{r echo=TRUE}
print("Usando dt()")
dt(x = t, df = gl)
{r echo=TRUE} ggplot() + geom_point(aes(x = t, y = f_dens_t, color='red')) + geom_line(aes(x = t, y = f_dens_t, color='blue'))
Se obtiene mediante función qt() de R el valor del punto crítico al 95% de confianza. Puede ser para cualquier nivel de confianza 0.90, 0.95, 0.99 o cualquier otro. El tamaño de la muestra es 25.
Al igual que en distribución normal de z se obtiene \(\alpha = 1 - 0.95\) y el valor critico sería \(\alpha/2\).
n = 25
t.critico <- abs(qt(p = (1 - 0.95) / 2, df = n-1))
t.critico
Si el valor de t \(t = \frac{(\bar{x}-\mu)}{s / \sqrt{n}} = \frac{\text{diferencia a probar}}{\text{ee =error estándar}}\) está dentro mayor y menor que el valor de t.critico o que está dentro de la región de aceptación, entonces se interpreta que está dentro de un intervalo de confianza o región de aceptación en relación a la curva y se acepta una tentativa hipótesis de lo contrario cae en región de no aceptación y se rechaza. Se verán las pruebas de hipótesis en casos más adelante.

Se utiliza función visualize() de librería previamente instalada
visualize.t(stat = c(-t.critico, t.critico), df = n-1, section = "tails") +
text(0, 0.2, expression(0.95), col = "black")
Se presenta una muestra pequeña de 28 valores, se generan valores de una secuencia alrededor de cero, esto se hace porque la distribución T Student, los valores de la variable aleatoria \(x\) se centran con media igual a cero \(0\) y por supuesto desviación igual a \(1\).
Se construyen gráficas:
g1 es una distribución normal estándar,
g2 distribución t student con 25 grados de libertad,
g3 t student con 5 grados de libertad y
Se visualizan las tres gráficas con una forma de campana o gauss, simétricas, solo que la distribución \(t\) se achata en relación a la distribución normal estándar \(z\) y se observa diferencia de dispersión con los grados de libertad en las gráficas \(t\).
# Grafica Normal Z con media igual a 0 y desv igual a 1
n <- 25
x <- seq(from = -3, to = 3, length.out = n)
media <- 0 #, round(mean(x),2)
desv <- 1 #round(sd(x), 2)
dens.z <- dnorm(x = x, mean = media, sd = desv)
tabla <- data.frame(x = x, y = dens.z)
#tabla.normal
g1 <- ggplot(data = tabla, aes(x = x, y = dens.z)) +
geom_point(colour = "red") +
geom_line(colour = 'blue') +
ggtitle("Normal Estándar(Z)", subtitle = paste("media = ", media, "sd=", desv)) +
labs(x = "Z's", y= "Densidad")
# Distribución T Aproximada a Distribución t con 24 grados de libertad
denst.24 <- dt(x = x, df = n - 1)
# Se vuelve a generar la tabla
tabla <- data.frame(x = x, y = denst.24)
g2 <- ggplot(data = tabla, aes(x = x, y = denst.24)) +
geom_point(colour = "red") +
geom_line(colour = 'green') +
ggtitle("T Student", subtitle = paste(n-1, " grados de libertad")) +
labs(x = "t's", y= "Densidad")
# Distribución T Aproximada a Distribución t con 5 grados de libertad
denst.5 <- dt(x = x, df = 5)
# Se vuelve a generar la tabla nuevamente
tabla <- data.frame(x = x, y = denst.5)
g3 <- ggplot(data = tabla, aes(x = x, y = denst.5)) +
geom_point(colour = "red") +
geom_line(colour = 'yellow') +
ggtitle("T Student", subtitle = paste(5, " grados de libertad")) +
labs(x = "t's", y= "Densidad")
plot_grid(g1, g2, g3, nrow = 1, ncol = 3)
Construyendo una tabla con las tres distribuciones incluyendo los valores de \(z's; t's\) y de las densidades juntas
# Gráficas juntas con una misma tabla
tabla <- data.frame(x, dens.z, denst.24, denst.5)
g4 <- ggplot(data = tabla)
g4 <- g4 + geom_line(aes(x= x, y = dens.z), colour = "blue")
g4 <- g4 + geom_line(aes(x= x, y = denst.24), colour = "green")
g4 <- g4 + geom_line(aes(x= x, y = denst.5), colour = "yellow")
g4 <- g4 + ggtitle("Normal Stándar(Z) y T Student", subtitle = paste("media = 0, sd = 1; ", (n-1)," y 5", " grados de libertad") )
g4 <- g4 + labs(x = "Z's y t's", y= "Densidad")
g4
\[ IC = \bar{x} \pm t \cdot \frac{S}{\sqrt{n}} \]
Determinar el intervalo de confianza con el valor real de t (t critico). El valor al 95% de los datos al rededor de la media, el resto 5% se reparte a ambos lados de la curva.
El valor de t.critico se calcula con la función qt() de la distribución t student()
\[ \alpha = (1 - 95\%) / 2 \\ \alpha = (0.05) / 2 = 0.025 \]
paste("n=", n)
confianza <- 0.95
t.a <- qt(p = (1 - confianza) / 2, df = n-1) # dos colas
t.a
t.b <- qt(p = (1 - confianza) / 2, df = n-1, lower.tail = FALSE)
t.b
# Tomar cualquiera de las dos t t.a o t.b en su valor absoluto
t <- abs(t.b)
visualize.t(stat = c(-t, t), df = n-1, section = "tails") +
text(0, 0.2, expression("95%"), col = "red")
n <- 25; media.m <- 62.1; desv.m <- 5.83; media.p <- 60
paste("Media muestra = ", media.m)
paste("Desv. muestra", desv.m)
print("Intervalo de confianza al 95%")
paste("t.critico",t.critico)
li <- media.m - t * (desv.m /sqrt(n) )
ls <- media.m + t * (desv.m /sqrt(n) )
print("intervalo")
intervalo <- c(li, ls)
intervalo
El intervalo de confianza r intervalo sirve para evaluar
si la media de la población está en dicho intervalo de tal forma que se
acepta o se rechaza una tentativa hipótesis en relación a la región o
área de aceptación o si está en el intervalo de confianza.
Se presentan varios ejercicios relacionados con al distribución T Student.
Un Gerente de mall desea estimar la cantidad media que gastan los clientes que visitan el centro comercial. Una muestra de 20 clientes revela las siguientes cantidades: \(48.16, 42.22, 46.82, 51.45, 23.78, 41.86, 54.86, 37.92, 52.64, 48.59, 50.82, 46.94, 61.83, 61.69, 49.17, 61.46, 51.35, 52.68, 58.84, 43.88\)
¿Cuál es la mejor estimación de la media poblacional ?. Determine un intervalo de confianza de 95%.
cantidades <- c(48.16, 42.22, 46.82, 51.45, 23.78, 41.86, 54.86, 37.92, 52.64, 48.59, 50.82, 46.94, 61.83, 61.69, 49.17, 61.46, 51.35, 52.68, 58.84, 43.88)
media.m <- round(mean(cantidades),4)
desv.m <- round(sd(cantidades),)
n <- length(cantidades)
confianza <- 0.95
tabla <- data.frame(variables = c("n", "Grados libertad", "Media muestra", "Desv.Std muestra", "Media Pob.", "Confianza"), datos = c(n, (n-1), media.m, desv.m, NA, confianza))
tabla
t <- qt(p = (1 - confianza) / 2, df = n-1) # dos colas
t <- abs(t)
t
li <- media.m - t * (desv.m /sqrt(n) )
ls <- media.m + t * (desv.m /sqrt(n) )
print("intervalo")
intervalo <- c(li, ls)
intervalo
La mejor estimación de una media poblacional es que tenga un valor
entre r intervalo[1] y r intervalo[2] con un
95% de confianza.
visualize.t(stat = c(-t, t), df = n-1, section = "tails") +
text(0, 0.2, expression("95%"), col = "red")
Un fabricante de llantas desea investigar la durabilidad de sus productos. Una muestra de \(10\) llantas para recorrer 50000 millas reveló una media muestral de \(0.32\) pulgadas de cuerda restante con una desviación estándar de \(0.09\) pulgadas. [@lind2015].
Construya un intervalo de confianza de \(95%\) para la media poblacional.
Sería razonable que el fabricante concluyera que después de 50000 millas la cantidad media poblacional de cuerda restante es de \(0.30\) pulgadas?
\[ n=10; \bar{x} = 0.32; S = 0.09; confianza = 95\%; \mu = 0.30 \]
media.m <- 0.32
desv.m <- 0.09
n <- 10
media.p = 0.30
confianza = 0.95
tabla <- data.frame(variables = c("n", "Grados libertad", "Media muestra", "Desv.Std muestra", "Media Pob.", "Confianza"), datos = c(n, (n-1), media.m, desv.m, media.p, confianza))
tabla
t <- qt(p = (1 - confianza) / 2, df = n-1) # dos colas
t <- abs(t)
t
li <- media.m - t * (desv.m /sqrt(n) )
ls <- media.m + t * (desv.m /sqrt(n) )
print("intervalo")
intervalo <- c(li, ls)
intervalo
El intervalo de confianza con valores entre
r intervalo[1] y r intervalo[2] con un 95% de
confianza se interpreta que el fabricante a un 95% de confianza puede
estar seguro de que la profundidad media de las cuerdas oscila entre
r intervalo[1] y r intervalo[2]. Como el valor
de la media es r media.p es posible a un 95% que la media
de la población de r media.p esté dentro de la región de
confianza.
visualize.t(stat = c(-t, t), df = n-1, section = "tails") +
text(0, 0.2, expression("95%"), col = "red")
Se ha obtenido una muestra de \(15\) vendedores de una Editorial para estimar el valor medio de las ventas por trabajador en la Empresa. La media y la desviación de la muestra ( en miles de euros ) son \(5\) y \(1.464\), respectivamente.
Se pide deducir el intervalo de confianza al 90%
media.m <- 5
desv.m <- 1.464
n <- 15
confianza <- 0.90
tabla <- data.frame(variables = c("n", "Grados libertad", "Media muestra", "Desv.Std muestra", "Media Pob.", "Confianza"), datos = c(n, (n-1), media.m, desv.m, NA, confianza))
tabla
t <- qt(p = (1 - confianza) / 2, df = n-1) # dos colas
t <- abs(t)
t
li <- media.m - t * (desv.m /sqrt(n) )
ls <- media.m + t * (desv.m /sqrt(n) )
print("intervalo")
intervalo <- c(li, ls)
intervalo
El intervalo de confianza con valores entre
r intervalo[1] y r intervalo[2] con un 90% de
confianza se interpreta que la media de la población debe estar en ese
intervalo.
visualize.t(stat = c(-t, t), df = n-1, section = "tails") +
text(0, 0.2, expression("90%"), col = "red")
¿Cuál es la probabilidad acumulada de t a la izquierda cuando t vale 0?
{r echo=TRUE} gl = n-1 # Grados de libertad prob <- pt(q = 0, df = gl) prob
¿Cuál es la probabilidad acumulada de t a la dereha cuando t vale 0?
{r echo=TRUE} prob <- pt(q = 0, df = gl, lower.tail = FALSE) prob
¿Cuál es la probabilidad acumulada para un valor de t = 1 por la derecha a una muestra de 25?
{r echo=TRUE} prob <- pt(q = 1, df = gl, lower.tail = FALSE) prob
visualize.t(stat = 1, df = gl, section = "upper")
¿Cuál es la probabilidad acumulada para un valor de t = 1 por la izquierda a una muestra de 25?
{r echo=TRUE} prob <- pt(q = -1.5, df = gl) prob
visualize.t(stat = -1.5, df = gl, section = "lower")
La distribución t de Student es una de las distribuciones más utilizadas en estadística.
Un intervalo de confianza (IC) estima un parámetro con un rango de posibles valores que, con cierta probabilidad (1-α), contiene al valor verdadero del parámetro
La distribución de probabilidad de la t de Student permite estimar el valor de la media poblacional de una variable aleatoria que sigue una distribución normal cuando el parámetro se extrae de una muestra pequeña y se desconoce la varianza poblacional.
Se obtiene mediante función qt() de R el valor del punto crítico al 95% de confianza. Puede ser para cualquier nivel de confianza 0.90, 0.95, 0.99 o cualquier otro
str() muestra todos los detalles de los objetos en memoria, incluyendo las columnas de los marcos de datos (“data frames”), matrices y listas.
dt La función dt devuelve el valor de la función de densidad de probabilidad (pdf) de la distribución t de Student dada una determinada variable aleatoria x y grados de libertad df . La sintaxis para usar dt es la siguiente
ejemplos de dt en acción
dt (x = 0, gl = 20)
#de forma predeterminada, R asume que el primer argumento es xy el segundo argumento es df dt (0, 20)
dt (1, 30)
pt La función pt devuelve el valor de la función de densidad acumulada (cdf) de la distribución t de Student dada una determinada variable aleatoria x y grados de libertad df
EjemploS
pt (-0,785, 14)
#los siguientes enfoques producen resultados equivalentes
1 punto (-0,785, 14)
#area a la derecha pt (-0,785, 14, cola inferior = FALSO)
The application of the law of error to the work of the Brewery (1904, nota interna de prensa de Ginness)
On the error of counting with hæmacytometer, Biometrika, Vol. 5, N.º 3 (feb.), pp. 351-360 (1907). The probable error of a mean, Biometrika, Vol. 6, N.º 1 (mar.), pp. 1-25 (1908). Probable error of a correlation coefficient, Biometrika, Vol. 6, N.º 2/3. (sep.), pp. 302-310 (1908). The distribution of the means of samples which are not drawn at random, Biometrika, Vol. 7, No. 1/2. (Jul. - Oct.), pp. 210-214 (1909) An experimental determination of the probable error of Dr Spearman’s correlation coefficients, Biometrika, Vol. 13, No. 2/3. (Jul.), pp. 263-282. (1921) Review of Statistical Methods for Research Workers (R. A. Fisher) (1926) ‘Student’s’ Collected Papers (editado por E.S. Pearson y John Wishart, con prefacio de Launce McMullen), Londres: Biometrika Office. (1942)
E. S. Pearson (1990) ‘Student’, A Statistical Biography of William Sealy Gosset, Editado y completado por R. L. Plackett con la ayuda de G. A. Barnard, Oxford: University Press. E. S. Pearson, “‘Student’ as Statistician, Biometrika Vol. 30, n.º 3/4 (Jan., 1939), pp. 210-250.
Biografía escrita por Heinz Kohler Historias de estadísticos de E. Bruce Brooks La distribución T de Student Earliest known uses of some of the words of mathematics: S para encontrar una breve historia sobre cómo llegó la z de Student a ser t O’Connor, John J.; Robertson, Edmund F., «William Sealy Gosset» (en inglés), MacTutor History of Mathematics archive, Universidad de Saint Andrews.