Intervalos de confianza de una regresión en R con ggplot2

Cuando trabajamos con dos variables aleatorias, podemos testear si están relacionadas (o correlacionadas) entre ellas o no mediante un análisis de correlación. De ser así, podemos representar los datos gráficamente, así como su línea de tendencia. Sin embargo, en muchas ocasiones nos interesa conocer los intervalos de confianza de la regresión. Sin embargo, representar gráficamente los intervalos de confianza de una regresión en R es tremendamente fácil con el paquete ggplot2. En este blog también hemos hablado sobre cómo generar intervalos de predicción, haciendo referencia a las diferencias entre el intervalo de confianza y el de predicción.

Quiero leer...

Paquete necesario: ggplot2

Para poder realizar satisfactoriamente estas figuras de regresiones con sus intervalos de confianza es necesario tener instalado y cargado el paquete ggplot2 en R. Para ello ejecutamos los siguientes dos comandos:

[sourcecode lang=»r»] install.packages("ggplot2", dependencies=TRUE)
library(ggplot2)
[/sourcecode]

El paquete ggplot2 es uno de los paquetes mejor valorados para realizar figuras en R.

En esta entrada os explicaré de un modo ordenado y estructurado cómo son los comandos para que os animéis y podáis disfrutar de todo el potencial de este paquete para realizar, entre otras muchas representaciones gráficas, una figura con los intervalos de confianza.

Intervalos de confianza de una regresión en R

Los intervalos de confianza se definen en base a un parámetro en concreto (media, desviación típica, etc.). En el caso de una regresión lineal simple, este parámetro es la recta de mínimos cuadrados que  mejor se ajusta a las observaciones.

Los intervalos de confianza siempre llevan asociados un porcentaje, que suele ser del 95%. El espacio que representa el intervalo de confianza del 95% se refiere a ese espacio donde existe un 95% de probabilidades de que se encuentre realmente esa línea de tendencia en la población general.

Los intervalos de confianza se definen por otras dos líneas: una superior y otra inferior. Cada una de ellas se expresan con sus respectivas ecuaciones matemáticas.

Comparación entre intervalos de confianza e intervalos de predicción

Si queremos evaluar en qué intervalo se encuentra la media de esa regresión, aplicaremos el intervalo de confianza. Ahora bien, si queremos predecir cuál es el intervalo completo que puede adquirir el valor de Y para una X dada, deberemos utilizar el intervalo de predicción.

Mientras que el intervalo de confianza va asociado a un parámetro (media, por ejemplo), el intervalo de predicción va asociado a la dispersión de las observaciones.

2 formas de representar gráficamente los intervalos de confianza de una regresión en R

El paquete ggplot2 presenta varias funciones que nos permiten representar gráficamente los intervalos de confianza de una regresión en R. Estas funciones son qplot() y ggplot().

Datos del ejemplo

Para poder replicar los comandos y códigos que representen gráficamente los intervalos de confianza de una regresión en R en esta entrada, os animo a que os descarguéis los datos y juguéis con ellos. En mi caso los cargo en R Commander, pero vosotros lo podéis incorporar a R siguiendo vuestro procedimiento favorito.

Realizando un diagrama de dispersión (o Scatterplot) de los datos en R Commander, vemos cómo se relacionan la variable X y la Y.

diagrama-de-dispersion-o-scatterplot-de-los-datos-del-ejemplo

Función qplot() y sus atributos

En el paquete ggplot2 existen una variedad de funciones hechas con distinto propósito. La que nos interesa especialmente es la función qplot(), con la que podremos realizar formidables figuras de regresión. Pero para iniciarnos en esta función, debemos aprender primero qué opciones tiene, lo que se conoce en la jerga de R como atributos.

Y para ello, vamos a realizar una regresión lineal simple a los datos de las medidas de los molares de Neandertales (Figura 12). El comando que debéis copiar y pegar en R Commander es el siguiente:

Función qplot() del paquete ggplot2
qplot(X, Y, data=Datos, geom=c("smooth"), method="lm", formula= y ~ x, level=0.95)

Aprendamos ahora los valores que tenemos que modificar (marcados con colores) en caso de tener que adaptar el comando a otro ejemplo o supuesto práctico:

  • Rosa: poner el nombre de la variable independiente (X).
  • Verde: poner el nombre de la variable dependiente (Y).
  • Azul: poner el nombre del conjunto de datos.
  • Rojo: esta es la fórmula que va a representar.
    • y ~ x (regresión lineal simple)
    • y ~ poly(x,2) (regresión polinomial de segundo grado)
    • y ~ poly(x,3) (regresión polinomial de tercer grado)
    • etc.
  • Magenta: podemos cambiar el nivel de significación cambiando el parámetro level. Si queremos que sea un nivel de significación de 0.01, el comando es level=0.99.

Intervalos de confianza de una regresión en R usando el comando qplot() de ggplot2

Os recomendamos también la lectura de la siguiente entrada, donde se profundiza en el uso de la función qplot():

Cómo hacer gráficos profesionales en R usando qplot (ggplot2)

La representación gráfica de datos numéricos es esencial para poder observar el comportamiento de los mismos y observar tendencias. Somos animales visuales, y Una figura vale más que mil números, en clara alusión a la … Leer más…

1 comentario

Función ggplot() y sus atributos

La función ggplot, incluida en el paquete ggplot2, permite realizar las mismas figuras que se han mostrado usando la función qplot(), pero añadiendo los puntos de las observaciones. El código para realizar esta figura es el siguiente:

Función ggplot() del paquete ggplot2
ggplot(Datos, aes(x = X, y = Y)) + geom_point() + geom_smooth(method = "lm", formula = y ~ x, level=0.95)

El patrón de los colores es el mismo que el mostrado en la función qplot(), por lo que os invitamos a consultar esa gama de colores. Igualmente comentamos que si queréis eliminar los puntos de las observaciones, basta con quitar del código geom_point() +.

intervalos-de-confianza-de-una-regresion-en-r-usando-ggplot-del-paquete-ggplot2

Pero… ¿por qué aprender entonces dos funciones diferentes? Vale que en ggplot() puedas representar los puntos, pero ¿hay algún otro motivo de por qué aprender a hacer figuras con ggplot()? Pues sí, y es la posibilidad de representar gráficamente el intervalo de predicción, en vez del intervalo de confianza. Pero esto lo veremos en otra entrada.

5 comentarios en «Intervalos de confianza de una regresión en R con ggplot2»

Deja un comentario