19 votos

¿Cómo puedo encontrar valores no indicados en (interpolar en) tablas estadísticas?

A menudo la gente utiliza programas para obtener valores p, pero a veces -por la razón que sea- puede ser necesario obtener un valor crítico a partir de un conjunto de tablas.

Dada una tabla estadística con un número limitado de niveles de significación, y un número limitado de grados de libertad, ¿cómo obtengo valores críticos aproximados a otros niveles de significación o grados de libertad (como con $t$ chi-cuadrado, o $F$ tablas)?

Es decir, ¿cómo encuentro los valores "intermedios" de una tabla?

27voto

AdamSane Puntos 1825

Esta respuesta consta de dos partes principales: en primer lugar, utilizando interpolación lineal y, en segundo lugar, utilizando transformaciones para una interpolación más precisa. Los enfoques discutidos aquí son adecuados para el cálculo manual cuando se dispone de tablas limitadas, pero si se está implementando una rutina informática para producir valores p, hay enfoques mucho mejores (aunque tediosos cuando se hacen a mano) que deberían utilizarse en su lugar.

Si supiera que el valor crítico del 10% (de una cola) para una prueba z es 1,28 y que el valor crítico del 20% es 0,84, una estimación aproximada del valor crítico del 15% estaría a medio camino entre - (1,28+0,84)/2 = 1,06 (el valor real es 1,0364), y el valor del 12,5% podría estimarse a medio camino entre ese valor y el valor del 10% (1,28+1,06)/2 = 1,17 (valor real 1,15+). Esto es exactamente lo que hace la interpolación lineal, pero en lugar de "a medio camino", considera cualquier fracción del camino entre dos valores.

Interpolación lineal univariante

Veamos el caso de la interpolación lineal simple.

Así que tenemos alguna función (digamos de $x$ ) que pensamos que es aproximadamente lineal cerca del valor que estamos tratando de aproximar, y tenemos un valor de la función a cada lado del valor que queremos, por ejemplo, así:

\begin{array}{ c c } x & y\\ 8 & 9.3\\ 16 & y_{16}\\ 20 & 15.6\\ \end{array}

Los dos $x$ cuyos valores $y$ que conocemos tienen 12 (20-8) de diferencia. Observa cómo las $x$ -valor (el que queremos una aproximación $y$ -valor para) divide esa diferencia de 12 en la proporción 8:4 (16-8 y 20-16)? Es decir, es 2/3 de la distancia de la primera $x$ -valor hasta el último. Si la relación fuera lineal, el intervalo correspondiente de valores y estaría en la misma proporción.

linear interpolation

Así que $\frac{y_{16} - 9.3}{15.6 - 9.3}$ debería ser aproximadamente la misma que $\frac{16-8}{20-8}$ .

Es decir $\frac{y_{16} - 9.3}{15.6 - 9.3} \approx \frac{16-8}{20-8}$

reorganizando:

$y_{16} \approx 9.3 + (15.6 - 9.3) \frac{16-8}{20-8} = 13.5$

Un ejemplo con tablas estadísticas: si tenemos una tabla t con los siguientes valores críticos para 12 df:

\begin{array}{ c c } (2\text{-tail})& \\ α & t\\ 0.01 & 3.05\\ 0.02 & 2.68\\ 0.05 & 2.18\\ 0.10 & 1.78 \end{array}

Queremos el valor crítico de t con 12 df y un alfa de dos colas de 0,025. Es decir, interpolamos entre la fila de 0,02 y la de 0,05 de esa tabla:

\begin{array}{ c c } α & t\\ 0.02 & 2.68\\ 0.025 & \text{?}\\ 0.05 & 2.18\\ \end{array}

El valor en " $\text{?}$ " es el $t_{0.025}$ valor que deseamos aproximar mediante interpolación lineal. (Por $t_{0.025}$ En realidad me refiero al $1-0.025/2$ punto de la fdc inversa de a $t_{12}$ distribución).

Como antes, $0.025$ divide el intervalo de $0.02$ à $0.05$ en la proporción $(0.025-0.02)$ à $(0.05-0.025)$ (es decir $1:5$ ) y la incógnita $t$ -debe dividir el $t$ gama $2.68$ à $2.18$ en la misma proporción; equivalentemente, $0.025$ se produce $(0.025-0.02)/(0.05-0.02) = 1/6$ del camino a lo largo de la $x$ -por lo que la incógnita $t$ -valor debe producirse $1/6$ del camino a lo largo de la $t$ - rango.

Es decir $\frac{t_{0.025}-2.68}{2.18-2.68} \approx \frac{0.025-0.02}{0.05-0.02}$ o equivalentemente

$t_{0.025} \approx 2.68 + (2.18-2.68) \frac{0.025-0.02}{0.05-0.02} = 2.68 - 0.5 \frac{1}{6} \approx 2.60 $

La respuesta real es $2.56$ ... lo que no es particularmente cercano porque la función que estamos aproximando no es muy cercana a lineal en ese rango (más cercano a $\alpha = 0.5$ es).

linear interpolation of critical value in t-tables

Mejores aproximaciones mediante transformación

Podemos sustituir la interpolación lineal por otras formas funcionales; en efecto, transformamos a una escala en la que la interpolación lineal funciona mejor. En este caso, en la cola, muchos valores críticos tabulados son más lineales que el $\log$ del nivel de significación. Después de tomar $\log$ s, simplemente aplicamos la interpolación lineal como antes. Intentémoslo en el ejemplo anterior:

\begin{array}{ c c } α & \log(α)& t\\ 0.02 & -3.912 & 2.68\\ 0.025& -3.689 & t_{0.025}\\ 0.05 & -2.996 & 2.18\\ \end{array}

Ahora

\begin{eqnarray} \frac{t_{0.025}-2.68}{2.18-2.68} &\approx& \frac{\log(0.025)-\log(0.02)}{\log(0.05)-\log(0.02)} \\ &=& \frac{-3.689 - -3.912}{-2.996 - -3.912}\\ \end{eqnarray}

o equivalentemente

\begin{eqnarray} t_{0.025} &\approx& 2.68 + (2.18-2.68) \frac{-3.689 - -3.912}{-2.996 - -3.912}\\ &=& 2.68 - 0.5 \cdot 0.243 \approx 2.56 \end{eqnarray}

Lo que es correcto para el número de cifras citado. Esto se debe a que -cuando transformamos la escala x logarítmicamente- la relación es casi lineal:

linear interpolation in log alpha
De hecho, visualmente, la curva (gris) se sitúa perfectamente sobre la línea recta (azul).

En algunos casos, el logit del nivel de significación ( $\text{logit}(\alpha)=\log(\frac{α}{1-α})=\log(\frac{1}{1-α}-1)$ ) puede funcionar bien en un intervalo más amplio, pero normalmente no es necesario (normalmente sólo nos preocupamos por valores críticos precisos cuando $\alpha$ es lo suficientemente pequeño como para que $\log$ funciona bastante bien).

Interpolación entre diferentes grados de libertad

$t$ chi-cuadrado y $F$ también tienen grados de libertad, donde no todos los df ( $\nu$ -) se tabula el valor. Los valores críticos en su mayoría $^\dagger$ no se representan con precisión mediante interpolación lineal en el df. De hecho, a menudo ocurre que los valores tabulados son lineales en el recíproco de df, $1/\nu$ .

(En las tablas antiguas se solía recomendar trabajar con $120/\nu$ - la constante en el numerador no hace ninguna diferencia, pero era más conveniente en los días pre-calculadora porque 120 tiene un montón de factores, por lo que $120/\nu$ suele ser un número entero, lo que simplifica un poco el cálculo).

A continuación se muestra cómo funciona la interpolación inversa en valores críticos del 5% de $F_{4,\nu}$ entre $\nu = 60$ y $120$ . Es decir, sólo los puntos finales participan en la interpolación en $1/\nu$ . Por ejemplo, para calcular el valor crítico de $\nu=80$ tomamos (y nótese que aquí $F$ representa la inversa de la fdc):

$$F_{4,80,.95} \approx F_{4,60,.95} + \frac{1/80 - 1/60}{1/120 - 1/60} \cdot (F_{4,120,.95}-F_{4,60,.95})$$

inverse interp in df

(Compárese con el diagrama aquí )


$^\dagger$ Casi siempre, pero no siempre. He aquí un ejemplo en el que la interpolación lineal en df es mejor, y una explicación de cómo saber a partir de la tabla que la interpolación lineal va a ser exacta.

Aquí hay un trozo de una tabla de chi-cuadrado

            Probability less than the critical value
 df           0.90      0.95     0.975      0.99     0.999
______   __________________________________________________

 40         51.805    55.758    59.342    63.691    73.402
 50         63.167    67.505    71.420    76.154    86.661
 60         74.397    79.082    83.298    88.379    99.607
 70         85.527    90.531    95.023   100.425   112.317

Imaginemos que deseamos encontrar el valor crítico del 5% (percentiles 95) para 57 grados de libertad.

Observando detenidamente, vemos que los valores críticos del 5% de la tabla progresan aquí de forma casi lineal:

enter image description here

(la línea verde une los valores para 50 y 60 df; se puede ver que toca los puntos para 40 y 70)

Así que la interpolación lineal irá muy bien. Pero, claro, no tenemos tiempo de dibujar el gráfico; ¿cómo decidir cuándo utilizar la interpolación lineal y cuándo probar algo más complicado?

Además de los valores a ambos lados del que buscamos, toma el valor más próximo (70 en este caso). Si el valor tabulado medio (el correspondiente a df=60) se aproxima linealmente a los valores finales (50 y 70), la interpolación lineal será adecuada. En este caso, los valores están equiespaciados, por lo que es especialmente fácil: es $(x_{50,0.95}+x_{70,0.95})/2$ cerca de $x_{60,0.95}$ ?

Encontramos que $(67.505+90.531)/2 = 79.018$ que, comparado con el valor real para 60 df, 79,082, podemos ver que tiene una precisión de casi tres cifras, lo que suele ser bastante bueno para la interpolación, por lo que en este caso, seguiríamos con la interpolación lineal; con el paso más fino para el valor que necesitamos, ahora esperaríamos tener una precisión de 3 cifras.

Así que tenemos: $\frac{x-67.505}{79.082-67.505} \approx {57-50}{60-50}$ o

$x\approx 67.505+(79.082-67.505)\cdot {57-50}{60-50}\approx 75.61$ .

El valor real es 75,62375, por lo que hemos obtenido 3 cifras de precisión y sólo nos hemos equivocado por 1 en la cuarta cifra.

Se puede obtener una interpolación más precisa utilizando métodos de diferencias finitas (en particular, mediante diferencias divididas), pero esto es probablemente excesivo para la mayoría de los problemas de comprobación de hipótesis.

Si tus grados de libertad sobrepasan los extremos de tu mesa, esta pregunta discute ese problema.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X