Tengo un conjunto de datos con una distribución de una variable respecto a la otra parecida a una cúbica (sube hasta cierto punto y luego baja hasta un nivel estable sin una subida consecuente). Sé en qué casos utilizar los modelos log-lineal, log-lin, lin-log y lineal recíproco o log recíproco, pero no estoy seguro de qué hacer en este caso (he comprobado todos los anteriores y, como era de esperar, no se ajustan bien). ¿Hay algún modelo lineal que me pueda ayudar en este caso?
Respuestas
¿Demasiados anuncios?Los splines cúbicos restringidos (splines naturales) son una opción excelente. Se trata de polinomios cúbicos a trozos que pueden ajustarse a cualquier forma con suficientes nudos. El siguiente código en R muestra cómo ajustar tales relaciones y trazar el ajuste con bandas de confianza.
require(rms)
dd <- datadist(mydata); options(datadist='dd')
f <- ols(y ~ rcs(x1, 5)) # 5 knots at default locations
f # print model stats
plot(Predict(f)) # or plot(Predict(f, x1)) # plots over 10th smallest to 10th largest observation
Habría pensado que una "regresión cúbica" funcionaría bien para una relación cúbica. Llama a $Y_{i}$ la variable dependiente, y $X_{i}$ la variable independiente (o regresor). Basta con utilizar una regresión polinómica:
$$Y_{i}=\left(\sum_{j=0}^{p}\beta_{j}X_{i}^{j}\right)+e_{i}$$
Utilizaría BIC para seleccionar el valor de $p$ . Para ello es muy fácil - calcular el coeficiente de determinación $R_{p}^{2}$ de una salida de regresión OLS estándar. Entonces una forma conveniente de BIC viene dada por:
$$BIC_{p}=n\log(1-R_{p}^{2})+p\log(n)$$
Aunque ésta es la forma estándar, con los logaritmos naturales, una forma numérica más conveniente viene dada por $$BIC10_{p}=-\frac{1}{2}\log_{10}(e)BIC_{p}$$
La razón por la que digo esto es que en esta forma anterior, se obtiene el BIC expresado en base 10 unidades logarítmicas, y esto conduce a una interpretación muy rápida del número real del BIC. Si BIC es positivo, entonces el orden actual $p$ está más respaldado por los datos (en comparación con el modelo de sólo intercepto), y el valor numérico en forma de odds es $10^{BIC10_{p}}$ . Así que si $BIC10_{p}=1$ entonces el orden $p$ polinomio es 10 veces más probable que el modelo de sólo intercepto, si $BIC10_{p}=10$ entonces el orden $p$ polinomio es 10 mil millones de veces más probable. El BIC10 indica cuántos dígitos tiene la razón de probabilidades. Así que una forma razonable de proceder es seguir aumentando el orden de un polinomio hasta que $BIC10_{p}$ sea lo suficientemente grande.
Sin embargo, hay que tener cuidado con este tipo de procedimiento, ya que no es probable que funcione bien para la extrapolación fuera del rango de la $X_{i}$ valores. Esto se debe principalmente a que se trata de un procedimiento basado en datos.