# Limpiar Globar Eviroment
remove(list = ls())
#1. Cargar los Datos:
#install.packages("palmerpenguins")
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.3.3
# Abrir Palmerpenguins y sus datos
library(palmerpenguins)
## Warning: package 'palmerpenguins' was built under R version 4.3.3
data("penguins")
# Ver las primeras filas de los datos para verificar
head(penguins)
## # A tibble: 6 × 8
## species island bill_length_mm bill_depth_mm flipper_length_mm body_mass_g
## <fct> <fct> <dbl> <dbl> <int> <int>
## 1 Adelie Torgersen 39.1 18.7 181 3750
## 2 Adelie Torgersen 39.5 17.4 186 3800
## 3 Adelie Torgersen 40.3 18 195 3250
## 4 Adelie Torgersen NA NA NA NA
## 5 Adelie Torgersen 36.7 19.3 193 3450
## 6 Adelie Torgersen 39.3 20.6 190 3650
## # ℹ 2 more variables: sex <fct>, year <int>
pinguinos <- penguins
#2. Manipulacion de Datos:
# Eliminar las filas con valores faltantes
pinguinoslimpio <- na.omit(pinguinos)
# Seleccionar las variables numéricas y la especie
pinguinosnumericos <- pinguinoslimpio[, c("species", "bill_length_mm", "bill_depth_mm",
"flipper_length_mm", "body_mass_g")]
# Verificar la limpieza de los datos
head(pinguinoslimpio)
## # A tibble: 6 × 8
## species island bill_length_mm bill_depth_mm flipper_length_mm body_mass_g
## <fct> <fct> <dbl> <dbl> <int> <int>
## 1 Adelie Torgersen 39.1 18.7 181 3750
## 2 Adelie Torgersen 39.5 17.4 186 3800
## 3 Adelie Torgersen 40.3 18 195 3250
## 4 Adelie Torgersen 36.7 19.3 193 3450
## 5 Adelie Torgersen 39.3 20.6 190 3650
## 6 Adelie Torgersen 38.9 17.8 181 3625
## # ℹ 2 more variables: sex <fct>, year <int>
#3. Comparaciones entre Especies en Pares:
# Filtrar los pares de especies
adelie_chinstrap <- subset(pinguinosnumericos, species %in% c("Adelie", "Chinstrap"))
adelie_gentoo <- subset(pinguinosnumericos, species %in% c("Adelie", "Gentoo"))
chinstrap_gentoo <- subset(pinguinosnumericos, species %in% c("Chinstrap", "Gentoo"))
#4. Visualizaciones:
# body_mass_g entre Adelie vs Chinstrap
# Boxplot con puntos dispersos
ggplot(adelie_chinstrap, aes(x = species, y = body_mass_g, color = species)) +
geom_boxplot() +
geom_jitter(width = 0.2) +
ggtitle("Distribución de masa corporal: Adelie vs Chinstrap")

# Gráfico de densidad
ggplot(adelie_chinstrap, aes(x = body_mass_g, fill = species)) +
geom_density(alpha = 0.5) +
ggtitle("Densidad de masa corporal: Adelie vs Chinstrap")

#5. Pruebas t:
# Prueba t para masa corporal entre Adelie vs Chinstrap
t_test_body_mass <- t.test(body_mass_g ~ species, data = adelie_chinstrap)
t_test_body_mass
##
## Welch Two Sample t-test
##
## data: body_mass_g by species
## t = -0.44793, df = 154.03, p-value = 0.6548
## alternative hypothesis: true difference in means between group Adelie and group Chinstrap is not equal to 0
## 95 percent confidence interval:
## -145.66494 91.81724
## sample estimates:
## mean in group Adelie mean in group Chinstrap
## 3706.164 3733.088
# Repite la prueba t para las otras variables (longitud de aleta, longitud del pico,
#profundidad del pico)
# Por ejemplo, para "flipper_length_mm":
t_test_flipper_length <- t.test(flipper_length_mm ~ species, data = adelie_chinstrap)
t_test_flipper_length
##
## Welch Two Sample t-test
##
## data: flipper_length_mm by species
## t = -5.6115, df = 120.88, p-value = 1.297e-07
## alternative hypothesis: true difference in means between group Adelie and group Chinstrap is not equal to 0
## 95 percent confidence interval:
## -7.739129 -3.702450
## sample estimates:
## mean in group Adelie mean in group Chinstrap
## 190.1027 195.8235
#6. Resumir los Resultados:
# Resumen de resultados para la variable "body_mass_g" en Adelie vs Chinstrap
summary_body_mass <- aggregate(body_mass_g ~ species, data = adelie_chinstrap, mean)
summary_body_mass
## species body_mass_g
## 1 Adelie 3706.164
## 2 Chinstrap 3733.088
# Extraer el t-statistic, df, y p-valor
t_test_body_mass$statistic
## t
## -0.4479297
t_test_body_mass$parameter
## df
## 154.0326
t_test_body_mass$p.value
## [1] 0.6548333
#interpretar el valor
#para body_mass no se rechaza la hipotesis nula
#para body_mass la media entre especies se practicamente la misma
#7. Reflexión:
# Reflexión sobre las diferencias entre especies
# 1. Los pingüinos Gentoo tienden a tener mayor masa corporal, lo que
# podría estar relacionado con su hábitat más frío y remoto, donde
# requieren más grasa corporal para aislamiento y energía.
# 2. Gentoo también tienen aletas más largas, lo que mejora su capacidad
# para nadar rápido y bucear a mayor profundidad, facilitando la captura
# de peces.
# 3. Las especies Adelie y Chinstrap son más similares en morfología, pero
# las pequeñas diferencias en el pico podrían estar relacionadas con
# variaciones en su dieta, con Chinstrap alimentándose más en aguas abiertas.
# 4. En general, las diferencias morfológicas reflejan adaptaciones al entorno,
# dieta y comportamiento de cada especie, lo que les permite prosperar en
# hábitats específicos.