Gráficos en R. El paquete ggplot2 (3).

Cómo ya dijimos, vamos a comentar en esta entrada cómo representar regresiones con el comando qplot.

Utilizando el dataset iris, vamos a analizar varios ejemplos utilizando diversos comandos. Para realizar regresiones es obligatorio añadir el atributo geom=”smooth”. Aunque podemos añadirle más atributos.

Vamos a empezar aplicando exclusivamente method=”lm”, con lo que obtenemos una recta. Es decir, representaremos una regresión lineal. Si queremos añadir una regresión polinomial tenemos que añadir el atributo formula.

A continuación veremos cómo correlaciona lineamente el atributo Petal. Length (longitud del pétalo) con Sepal. Length (longitud del sépalo).

Escrbimos:

qplot(x=Sepal.Length, y=Petal.Length, data=iris, geom=(«smooth»), method=»lm»)

Sepal vs Petal (L)

Vemos, que tomando las tres especies en conjunto, hay una clara correlación lineal, y de forma que la longitud del pétalo y sépalo suelen suelen ser muy similares.

Ahora veámoslo pero representando también los valores cómo puntos. Escribimos:

qplot(x=Sepal.Length, y=Petal.Length, data=iris, geom=c(«point», «smooth»), method=»lm»)

sepal vs petal lm puntos

A continuación vamos a representar regresiones polinomiales. Para escribir fórmulas polinomiales en qplot lo tenemos que hacer de la siguiente forma:

1 grado: formula = y~x

2 grados: formula = y~poly(x,2)

3 grados: formula = y~poly(x,3)

n grados: formula = y~poly(x,n)

Hagamos una representación de una regresión segundo grado, que correlacione Sepal. Length con Petal.Length:

qplot(x=Sepal.Length, y=Petal.Length, data=iris, geom=(«smooth»), method=»lm», formula=y ~ poly(x,2))

segundo grado, petal vs sepal (l)

Ahora, una de tercer grado:

qplot(x=Sepal.Length, y=Petal.Length, data=iris, geom=(«smooth»), method=»lm», formula=y ~ poly(x,3))

tercer grado

Para ver las rectas de regresión de las diferentes especies:

qplot(x=Sepal.Length, y=Petal.Length,data=iris,geom=»smooth»,method=»lm», color=Species )

regresion species

Ahora, lo mismo pero con una regresión polinomial de grado 2, y comparando la longitud del sépalo ( Sepal.Length) con su anchura ( Sepal.Width).

qplot(x=Sepal.Length, y=Sepal.Width, data=iris, geom=(«smooth»),method=»lm», formula=y ~ poly(x,2), color=Species)

segundo grado width vs length

Lo mismo pero con una regresión de tercer grado:

qplot(x=Sepal.Length, y=Sepal.Width, data=iris, geom=(«smooth»),method=»lm», formula=y ~ poly(x,3), color=Species)

species tercer grado

Y hasta aquí esta entrada. En la próxima, seguiremos explorando las posibilidades del paquete ggplot2.

Deja un comentario

Tu dirección de correo electrónico no será publicada.