library(tidyverse)
## Warning: пакет 'tidyverse' был собран под R версии 4.5.2
## Warning: пакет 'ggplot2' был собран под R версии 4.5.1
## Warning: пакет 'tibble' был собран под R версии 4.5.1
## Warning: пакет 'tidyr' был собран под R версии 4.5.1
## Warning: пакет 'readr' был собран под R версии 4.5.2
## Warning: пакет 'purrr' был собран под R версии 4.5.1
## Warning: пакет 'dplyr' был собран под R версии 4.5.1
## Warning: пакет 'forcats' был собран под R версии 4.5.2
## Warning: пакет 'lubridate' был собран под R версии 4.5.2
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.6
## ✔ forcats   1.0.1     ✔ stringr   1.5.2
## ✔ ggplot2   3.5.2     ✔ tibble    3.3.0
## ✔ lubridate 1.9.5     ✔ tidyr     1.3.1
## ✔ purrr     1.1.0     
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(palmerpenguins)
## Warning: пакет 'palmerpenguins' был собран под R версии 4.5.2
## 
## Присоединяю пакет: 'palmerpenguins'
## 
## Следующие объекты скрыты от 'package:datasets':
## 
##     penguins, penguins_raw
library(ggthemes)
## Warning: пакет 'ggthemes' был собран под R версии 4.5.2
penguins |>
  drop_na() |>
  ggplot(mapping = aes(x = bill_length_mm, y = bill_depth_mm))+
  geom_point(mapping = aes(color = species, 
                           shape = species)) +
  labs( title = "Глубина и длина клюва",
        subtitle = "Биометрические измерения для видов Адели, Чинстрап и Генту",
        x = "Длина клюва (мм)", 
        y = "Глубина клюва (мм)",
  color = "Виды", 
shape = "Виды") +
  theme(plot.title = element_text(vjust = +2))

#Виды пингвинов довольно хорошо различаются по пропорциям клюва
penguins |>
  drop_na() |>
  ggplot(mapping = aes(x = island, fill = sex)) +
  geom_bar(position = "dodge")+
  scale_fill_manual(values = c("male" = "#6495ED", "female" = "#FFB6C1"))+
labs(title = "Сравнение численности самцов и самок по островам",
     subtitle = "Где больше самцов, а где — самок?",
     x = "Остров", 
     y = "Количество",
     fill = "Пол") +
  theme(plot.title = element_text(vjust = +2))

penguins |>
  drop_na() |>
  ggplot(mapping=aes(x = island, fill = sex)) +
  geom_bar(position = "dodge") +
  facet_wrap(~species)+
  scale_fill_manual(values = c("male" = "#6495ED", "female" = "#FFB6C1"))+
  labs(title = "Сравнение численности самцов и самок по островам",
       subtitle = "Где больше самцов, а где — самок?",
       x = "Остров", 
       y = "Количество",
       fill = "Пол") +
  theme(plot.title = element_text(vjust = +2))

penguins |>
  drop_na() |>
  ggplot(mapping=aes(x = island, y =body_mass_g, z=sex, fill = sex)) +
  geom_boxplot() +
scale_fill_manual(values = c("male" = "#6495ED", "female" = "#FFB6C1")) +
  labs(title = "Сравнение Масса тела самцов и самок по островам",
       x = "Остров", 
       y = "Масса тела (г)",
       fill = "Пол") +
  theme_bw() +
  theme(plot.title = element_text(vjust = +2))

#на всех островах самцы тяжелее самок, но величина разницы варьируется
penguins |>
  drop_na() |>
ggplot(mapping=aes(x = species, y = flipper_length_mm, z=sex, fill = sex))+
  geom_boxplot() +
scale_fill_manual(values = c("male" = "#6495ED", "female" = "#FFB6C1")) +
  labs(title = "Сравнительный анализ размеров ласт у самцов и самок разных видов пингвинов",
       x = "Вид пингвина", 
       y = "Длина ласта (мм)",
       fill = "Пол") +
  theme_bw() +
  theme(plot.title = element_text(vjust = +2))

# у всех трёх видов самцы имеют более длинные ласты, чем самки, хотя величина разницы варьируется
penguins |>
drop_na() |>
ggplot(mapping= aes(x = year))+
  geom_bar(mapping = aes(x = year,fill = sex)) +
  theme_bw() +
  scale_fill_manual(values = c("male" = "#6495ED", "female" = "#FFB6C1")) +
labs(title = "Численность самцов и самок пингвинов по годам",
     x = "год", 
     y = "количество",
fill = "Пол")+
  theme_bw() +
  theme(plot.title = element_text(vjust = +2))

penguins |>
  drop_na() |>
  ggplot(mapping = aes(x =bill_length_mm, color = species,fill = species))  +
geom_density(alpha = 0.5)+
labs(title = "Длина клюва у разных видов пингвинов",
     x = "Длина клюва (мм)", 
     y = "Плотность")+
  theme_bw() +
  theme(plot.title = element_text(vjust = +2))

#Кривые Gentoo и Chinstrap частично перекрываются, что указывает на частичное совпадение длины клюва у этих видов.