Video explicativo

Link: https://youtu.be/zIidZJ5m4SU

Datos

glimpse(penguins)
## Rows: 344
## Columns: 8
## $ species           <fct> Adelie, Adelie, Adelie, Adelie, Adelie, Adelie, Adel…
## $ island            <fct> Torgersen, Torgersen, Torgersen, Torgersen, Torgerse…
## $ bill_length_mm    <dbl> 39.1, 39.5, 40.3, NA, 36.7, 39.3, 38.9, 39.2, 34.1, …
## $ bill_depth_mm     <dbl> 18.7, 17.4, 18.0, NA, 19.3, 20.6, 17.8, 19.6, 18.1, …
## $ flipper_length_mm <int> 181, 186, 195, NA, 193, 190, 181, 195, 193, 190, 186…
## $ body_mass_g       <int> 3750, 3800, 3250, NA, 3450, 3650, 3625, 4675, 3475, …
## $ sex               <fct> male, female, female, NA, female, male, female, male…
## $ year              <int> 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007, 2007…

Ejercicio 1 (Limpieza y Agrupación)

# Filtra los datos para eliminar las observaciones con valores faltantes (NA) en la variable sex.
penguins_limpio <- penguins %>%
  filter(!is.na(sex))
# Agrupa por species y sex
penguins_limpio %>%
  group_by(species, sex) %>%
# Calcula la media y la desviación estándar de la masa corporal (body_mass_g), así como la cantidad de observaciones por grupo
  summarise(
    media_masa = mean(body_mass_g),
    desviacion_masa = sd(body_mass_g),
    cantidad = n()
  )
## # A tibble: 6 × 5
## # Groups:   species [3]
##   species   sex    media_masa desviacion_masa cantidad
##   <fct>     <fct>       <dbl>           <dbl>    <int>
## 1 Adelie    female      3369.            269.       73
## 2 Adelie    male        4043.            347.       73
## 3 Chinstrap female      3527.            285.       34
## 4 Chinstrap male        3939.            362.       34
## 5 Gentoo    female      4680.            282.       58
## 6 Gentoo    male        5485.            313.       61

Interpretación: Se filtran los datos de los pingüinos y se elimina los pingüinos que no tienen sexo, luego se organizan los datos en 6 grupos, se calcula el peso promedio, la variación del peso con respecto al promedio de la especie y la cantidad de pingüinos estudiados. En las tres especies los machos pesan más que las hembras (dimorfismo sexual). Gentoo es la más pesada, con hembras de unos 4680 g y machos de unos 5485 g, mientras que Adelie y Chinstrap tienen masas más parecidas entre sí. Las desviaciones estándar son moderadas frente a las medias, así que los grupos son bastante homogéneos.

Ejercicio 2 (Dispersión)

# Paso 1: Filtrar NAs en sex y definir variables/colores 
penguins %>%
  filter(!is.na(sex)) %>%
  ggplot(aes(x = bill_length_mm, y = body_mass_g, color = species)) +
# Paso 2: Dibujar los puntos y ajustar su tamaño y transparencia 
  geom_point(size = 2.5, alpha = 0.8) + 
# Paso 3: Agregar títulos descriptivos y etiquetas a los ejes
  labs(
    title = "Comparación entre la longitud del pico y la masa corporal",
    subtitle = "Datos de pinguinos",
    x = "Longitud del Pico (mm)",
    y = "Masa Corporal (g)",
    color = "Especie"
  ) +
# Paso 4: Aplicar tema visual limpio
  theme_minimal()

Interpretación: Este primer grafico permite ver cómo se relacionan la longitud del pico y el peso de los pingüinos. Cada punto representa a un pingüino individual. Lo que más se ve es cómo las especies se agrupan en zonas diferentes: los pingüinos Gento que tienen el color azul se ubican en la parte superior, lo que significa que son los más grandes y pesados de los tres grupos.

Ejercicio 3 (Regresión Lineal)

# Paso 1: Filtrar NAs en sex y definir variables continuas X e Y 
penguins %>%
  filter(!is.na(sex)) %>%
  ggplot(aes(x = bill_length_mm, y = body_mass_g, color = species)) +
# Paso 2: Graficar las observaciones individuales como puntos
  geom_point(size = 2, alpha = 0.7) +
# Paso 3: Trazar la recta de regresión lineal para cada especie
  geom_smooth(method = "lm", se = FALSE) +
# Paso 4: Personalizar las etiquetas y el título
  labs(
     title = "Relación entre la longitud del pico y la masa corporal por especie",
     x = "Longitud del Pico (mm)",
     y = "Masa Corporal (g)",
     color = "Especie"
   )+
# Paso 5: Usar tema con borde completo
  theme_bw()

Interpretación: Dentro de cada especie la relación entre pico y masa es positiva, y las tres rectas tienen pendientes parecidas. Sin embargo, la recta de Gentoo queda más arriba: con un mismo largo de pico pesa más. La especie cambia el nivel de la masa, pero no el sentido de la relación. Los puntos se dispersan alrededor de las rectas, así que hay otros factores, como el sexo.

Ejercicio 4 (BoxPLot)

# Paso 1: Filtrar NAs en sex, mapear la variable categórica en X y numé rica en Y t
penguins %>%
  filter(!is.na(sex)) %>%
  ggplot(aes(x = species, y = flipper_length_mm, fill = species)) +
# Paso 2: Crear el gráfico de cajas resaltando outliers en rojo 
  geom_boxplot(alpha = 0.7, outlier.color = "red") +
# Paso 3: Asignar nombres a los ejes y título
  labs(
    title = "Comparación entre la especie y la longitud de las aletas",
    x = "Especie",
    y = "Longitud de las Aletas (mm)",
  )+
# Paso 4: Aplicar tema minimalista 
  theme_minimal() +
# Paso 5: Eliminar la leyenda lateral redundante
  theme(legend.position = "none") 

Interpretación: Este tercer gráfico compara el tamaño de las aletas entre las tres especies. La línea negra dentro de cada caja marca la mediana de las aletas de la especie. Gentoo tiene las aletas más largas (mediana cercana a 216 mm) y casi no se superpone con las otras especies. Adelie (cercana a 190 mm) y Chinstrap (cercana a 196 mm) se superponen parcialmente. Esto es coherente con el mayor tamaño corporal de Gentoo: la aleta separa bien a Gentoo, pero no tanto a Adelie de Chinstrap.

LS0tDQp0aXRsZTogJ1RhbGxlciBQcsOhY3RpY286IGRwbHlyIHkgZ2dwbG90MiBjb24gcGFsbWVycGVuZ3VpbnMnDQphdXRob3I6DQotIERpbGFuIEFuZHLDqXMgQ2FzdGHDsWVkYSBSb2ENCi0gRGF2aWQgRXN0ZWJhbiBBY2V2ZWRvIE1hcmVudGVzDQotIEplbm55IElzYWJlbGxhIEFyaWFzIE1vcmENCmRhdGU6ICIyMC8wOS8yMDI2Ig0Kb3V0cHV0Og0KICBodG1sX2RvY3VtZW50Og0KICAgIGNvZGVfZG93bmxvYWQ6IHRydWUNCiAgICB0b2M6IHRydWUNCiAgICB0b2NfZmxvYXQ6IHRydWUNCiAgICB0aGVtZTogcmVhZGFibGUNCi0tLQ0KDQpgYGB7ciBpbmNsdWRlPUZBTFNFfQ0Ka25pdHI6Om9wdHNfY2h1bmskc2V0KGVjaG8gPSBUUlVFLCB3YXJuaW5nID0gRkFMU0UsIG1lc3NhZ2UgPSBGQUxTRSkNCg0KbGlicmFyeShkcGx5cikNCmxpYnJhcnkoZ2dwbG90MikNCmxpYnJhcnkocGFsbWVycGVuZ3VpbnMpDQpgYGANCg0KIyMgVmlkZW8gZXhwbGljYXRpdm8NCg0KKipMaW5rOioqIGh0dHBzOi8veW91dHUuYmUveklpZFpKNW00U1UNCg0KIyMgRGF0b3MNCg0KYGBge3J9DQpnbGltcHNlKHBlbmd1aW5zKQ0KYGBgDQoNCiMjIEVqZXJjaWNpbyAxICoqKExpbXBpZXphIHkgQWdydXBhY2nDs24pKioNCg0KYGBge3J9DQojIEZpbHRyYSBsb3MgZGF0b3MgcGFyYSBlbGltaW5hciBsYXMgb2JzZXJ2YWNpb25lcyBjb24gdmFsb3JlcyBmYWx0YW50ZXMgKE5BKSBlbiBsYSB2YXJpYWJsZSBzZXguDQpwZW5ndWluc19saW1waW8gPC0gcGVuZ3VpbnMgJT4lDQogIGZpbHRlcighaXMubmEoc2V4KSkNCiMgQWdydXBhIHBvciBzcGVjaWVzIHkgc2V4DQpwZW5ndWluc19saW1waW8gJT4lDQogIGdyb3VwX2J5KHNwZWNpZXMsIHNleCkgJT4lDQojIENhbGN1bGEgbGEgbWVkaWEgeSBsYSBkZXN2aWFjacOzbiBlc3TDoW5kYXIgZGUgbGEgbWFzYSBjb3Jwb3JhbCAoYm9keV9tYXNzX2cpLCBhc8OtIGNvbW8gbGEgY2FudGlkYWQgZGUgb2JzZXJ2YWNpb25lcyBwb3IgZ3J1cG8NCiAgc3VtbWFyaXNlKA0KICAgIG1lZGlhX21hc2EgPSBtZWFuKGJvZHlfbWFzc19nKSwNCiAgICBkZXN2aWFjaW9uX21hc2EgPSBzZChib2R5X21hc3NfZyksDQogICAgY2FudGlkYWQgPSBuKCkNCiAgKQ0KYGBgDQoNCioqSW50ZXJwcmV0YWNpw7NuOioqIFNlIGZpbHRyYW4gbG9zIGRhdG9zIGRlIGxvcyBwaW5nw7xpbm9zIHkgc2UgZWxpbWluYSBsb3MgcGluZ8O8aW5vcyBxdWUgbm8gdGllbmVuIHNleG8sIGx1ZWdvIHNlIG9yZ2FuaXphbiBsb3MgZGF0b3MgZW4gNiBncnVwb3MsIHNlIGNhbGN1bGEgZWwgcGVzbyBwcm9tZWRpbywgbGEgdmFyaWFjacOzbiBkZWwgcGVzbyBjb24gcmVzcGVjdG8gYWwgcHJvbWVkaW8gZGUgbGEgZXNwZWNpZSB5IGxhIGNhbnRpZGFkIGRlIHBpbmfDvGlub3MgZXN0dWRpYWRvcy4gRW4gbGFzIHRyZXMgZXNwZWNpZXMgbG9zIG1hY2hvcyBwZXNhbiBtw6FzIHF1ZSBsYXMgaGVtYnJhcyAoZGltb3JmaXNtbyBzZXh1YWwpLiBHZW50b28gZXMgbGEgbcOhcyBwZXNhZGEsIGNvbiBoZW1icmFzIGRlIHVub3MgNDY4MCBnIHkgbWFjaG9zIGRlIHVub3MgNTQ4NSBnLCBtaWVudHJhcyBxdWUgQWRlbGllIHkgQ2hpbnN0cmFwIHRpZW5lbiBtYXNhcyBtw6FzIHBhcmVjaWRhcyBlbnRyZSBzw60uIExhcyBkZXN2aWFjaW9uZXMgZXN0w6FuZGFyIHNvbiBtb2RlcmFkYXMgZnJlbnRlIGEgbGFzIG1lZGlhcywgYXPDrSBxdWUgbG9zIGdydXBvcyBzb24gYmFzdGFudGUgaG9tb2fDqW5lb3MuDQoNCiMjIEVqZXJjaWNpbyAyICoqKERpc3BlcnNpw7NuKSoqDQoNCmBgYHtyfQ0KIyBQYXNvIDE6IEZpbHRyYXIgTkFzIGVuIHNleCB5IGRlZmluaXIgdmFyaWFibGVzL2NvbG9yZXMgDQpwZW5ndWlucyAlPiUNCiAgZmlsdGVyKCFpcy5uYShzZXgpKSAlPiUNCiAgZ2dwbG90KGFlcyh4ID0gYmlsbF9sZW5ndGhfbW0sIHkgPSBib2R5X21hc3NfZywgY29sb3IgPSBzcGVjaWVzKSkgKw0KIyBQYXNvIDI6IERpYnVqYXIgbG9zIHB1bnRvcyB5IGFqdXN0YXIgc3UgdGFtYcOxbyB5IHRyYW5zcGFyZW5jaWEgDQogIGdlb21fcG9pbnQoc2l6ZSA9IDIuNSwgYWxwaGEgPSAwLjgpICsgDQojIFBhc28gMzogQWdyZWdhciB0w610dWxvcyBkZXNjcmlwdGl2b3MgeSBldGlxdWV0YXMgYSBsb3MgZWplcw0KICBsYWJzKA0KICAgIHRpdGxlID0gIkNvbXBhcmFjacOzbiBlbnRyZSBsYSBsb25naXR1ZCBkZWwgcGljbyB5IGxhIG1hc2EgY29ycG9yYWwiLA0KICAgIHN1YnRpdGxlID0gIkRhdG9zIGRlIHBpbmd1aW5vcyIsDQogICAgeCA9ICJMb25naXR1ZCBkZWwgUGljbyAobW0pIiwNCiAgICB5ID0gIk1hc2EgQ29ycG9yYWwgKGcpIiwNCiAgICBjb2xvciA9ICJFc3BlY2llIg0KICApICsNCiMgUGFzbyA0OiBBcGxpY2FyIHRlbWEgdmlzdWFsIGxpbXBpbw0KICB0aGVtZV9taW5pbWFsKCkNCmBgYA0KDQoqKkludGVycHJldGFjacOzbjoqKiBFc3RlIHByaW1lciBncmFmaWNvIHBlcm1pdGUgdmVyIGPDs21vIHNlIHJlbGFjaW9uYW4gbGEgbG9uZ2l0dWQgZGVsIHBpY28geSBlbCBwZXNvIGRlIGxvcyBwaW5nw7xpbm9zLiBDYWRhIHB1bnRvIHJlcHJlc2VudGEgYSB1biBwaW5nw7xpbm8gaW5kaXZpZHVhbC4gTG8gcXVlIG3DoXMgc2UgdmUgZXMgY8OzbW8gbGFzIGVzcGVjaWVzIHNlIGFncnVwYW4gZW4gem9uYXMgZGlmZXJlbnRlczogbG9zIHBpbmfDvGlub3MgR2VudG8gcXVlIHRpZW5lbiBlbCBjb2xvciBhenVsIHNlIHViaWNhbiBlbiBsYSBwYXJ0ZSBzdXBlcmlvciwgbG8gcXVlIHNpZ25pZmljYSBxdWUgc29uIGxvcyBtw6FzIGdyYW5kZXMgeSBwZXNhZG9zIGRlIGxvcyB0cmVzIGdydXBvcy4gDQoNCiMjIEVqZXJjaWNpbyAzICoqKFJlZ3Jlc2nDs24gTGluZWFsKSoqDQoNCmBgYHtyfQ0KIyBQYXNvIDE6IEZpbHRyYXIgTkFzIGVuIHNleCB5IGRlZmluaXIgdmFyaWFibGVzIGNvbnRpbnVhcyBYIGUgWSANCnBlbmd1aW5zICU+JQ0KICBmaWx0ZXIoIWlzLm5hKHNleCkpICU+JQ0KICBnZ3Bsb3QoYWVzKHggPSBiaWxsX2xlbmd0aF9tbSwgeSA9IGJvZHlfbWFzc19nLCBjb2xvciA9IHNwZWNpZXMpKSArDQojIFBhc28gMjogR3JhZmljYXIgbGFzIG9ic2VydmFjaW9uZXMgaW5kaXZpZHVhbGVzIGNvbW8gcHVudG9zDQogIGdlb21fcG9pbnQoc2l6ZSA9IDIsIGFscGhhID0gMC43KSArDQojIFBhc28gMzogVHJhemFyIGxhIHJlY3RhIGRlIHJlZ3Jlc2nDs24gbGluZWFsIHBhcmEgY2FkYSBlc3BlY2llDQogIGdlb21fc21vb3RoKG1ldGhvZCA9ICJsbSIsIHNlID0gRkFMU0UpICsNCiMgUGFzbyA0OiBQZXJzb25hbGl6YXIgbGFzIGV0aXF1ZXRhcyB5IGVsIHTDrXR1bG8NCiAgbGFicygNCiAgICAgdGl0bGUgPSAiUmVsYWNpw7NuIGVudHJlIGxhIGxvbmdpdHVkIGRlbCBwaWNvIHkgbGEgbWFzYSBjb3Jwb3JhbCBwb3IgZXNwZWNpZSIsDQogICAgIHggPSAiTG9uZ2l0dWQgZGVsIFBpY28gKG1tKSIsDQogICAgIHkgPSAiTWFzYSBDb3Jwb3JhbCAoZykiLA0KICAgICBjb2xvciA9ICJFc3BlY2llIg0KICAgKSsNCiMgUGFzbyA1OiBVc2FyIHRlbWEgY29uIGJvcmRlIGNvbXBsZXRvDQogIHRoZW1lX2J3KCkNCmBgYA0KDQoqKkludGVycHJldGFjacOzbjoqKiBEZW50cm8gZGUgY2FkYSBlc3BlY2llIGxhIHJlbGFjacOzbiBlbnRyZSBwaWNvIHkgbWFzYSBlcyBwb3NpdGl2YSwgeSBsYXMgdHJlcyByZWN0YXMgdGllbmVuIHBlbmRpZW50ZXMgcGFyZWNpZGFzLiBTaW4gZW1iYXJnbywgbGEgcmVjdGEgZGUgR2VudG9vIHF1ZWRhIG3DoXMgYXJyaWJhOiBjb24gdW4gbWlzbW8gbGFyZ28gZGUgcGljbyBwZXNhIG3DoXMuIExhIGVzcGVjaWUgY2FtYmlhIGVsIG5pdmVsIGRlIGxhIG1hc2EsIHBlcm8gbm8gZWwgc2VudGlkbyBkZSBsYSByZWxhY2nDs24uIExvcyBwdW50b3Mgc2UgZGlzcGVyc2FuIGFscmVkZWRvciBkZSBsYXMgcmVjdGFzLCBhc8OtIHF1ZSBoYXkgb3Ryb3MgZmFjdG9yZXMsIGNvbW8gZWwgc2V4by4NCg0KIyMgRWplcmNpY2lvIDQgKiooQm94UExvdCkqKg0KDQpgYGB7cn0NCiMgUGFzbyAxOiBGaWx0cmFyIE5BcyBlbiBzZXgsIG1hcGVhciBsYSB2YXJpYWJsZSBjYXRlZ8OzcmljYSBlbiBYIHkgbnVtw6kgcmljYSBlbiBZIHQNCnBlbmd1aW5zICU+JQ0KICBmaWx0ZXIoIWlzLm5hKHNleCkpICU+JQ0KICBnZ3Bsb3QoYWVzKHggPSBzcGVjaWVzLCB5ID0gZmxpcHBlcl9sZW5ndGhfbW0sIGZpbGwgPSBzcGVjaWVzKSkgKw0KIyBQYXNvIDI6IENyZWFyIGVsIGdyw6FmaWNvIGRlIGNhamFzIHJlc2FsdGFuZG8gb3V0bGllcnMgZW4gcm9qbyANCiAgZ2VvbV9ib3hwbG90KGFscGhhID0gMC43LCBvdXRsaWVyLmNvbG9yID0gInJlZCIpICsNCiMgUGFzbyAzOiBBc2lnbmFyIG5vbWJyZXMgYSBsb3MgZWplcyB5IHTDrXR1bG8NCiAgbGFicygNCiAgICB0aXRsZSA9ICJDb21wYXJhY2nDs24gZW50cmUgbGEgZXNwZWNpZSB5IGxhIGxvbmdpdHVkIGRlIGxhcyBhbGV0YXMiLA0KICAgIHggPSAiRXNwZWNpZSIsDQogICAgeSA9ICJMb25naXR1ZCBkZSBsYXMgQWxldGFzIChtbSkiLA0KICApKw0KIyBQYXNvIDQ6IEFwbGljYXIgdGVtYSBtaW5pbWFsaXN0YSANCiAgdGhlbWVfbWluaW1hbCgpICsNCiMgUGFzbyA1OiBFbGltaW5hciBsYSBsZXllbmRhIGxhdGVyYWwgcmVkdW5kYW50ZQ0KICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSAibm9uZSIpIA0KYGBgDQoNCioqSW50ZXJwcmV0YWNpw7NuOioqIEVzdGUgdGVyY2VyIGdyw6FmaWNvIGNvbXBhcmEgZWwgdGFtYcOxbyBkZSBsYXMgYWxldGFzIGVudHJlIGxhcyB0cmVzIGVzcGVjaWVzLiBMYSBsw61uZWEgbmVncmEgZGVudHJvIGRlIGNhZGEgY2FqYSBtYXJjYSBsYSBtZWRpYW5hIGRlIGxhcyBhbGV0YXMgZGUgbGEgZXNwZWNpZS4gR2VudG9vIHRpZW5lIGxhcyBhbGV0YXMgbcOhcyBsYXJnYXMgKG1lZGlhbmEgY2VyY2FuYSBhIDIxNiBtbSkgeSBjYXNpIG5vIHNlIHN1cGVycG9uZSBjb24gbGFzIG90cmFzIGVzcGVjaWVzLiBBZGVsaWUgKGNlcmNhbmEgYSAxOTAgbW0pIHkgQ2hpbnN0cmFwIChjZXJjYW5hIGEgMTk2IG1tKSBzZSBzdXBlcnBvbmVuIHBhcmNpYWxtZW50ZS4gRXN0byBlcyBjb2hlcmVudGUgY29uIGVsIG1heW9yIHRhbWHDsW8gY29ycG9yYWwgZGUgR2VudG9vOiBsYSBhbGV0YSBzZXBhcmEgYmllbiBhIEdlbnRvbywgcGVybyBubyB0YW50byBhIEFkZWxpZSBkZSBDaGluc3RyYXAuDQo=