---
title: "Exercício 2"
author: "Aline Fonseca"
date: "12 Oct 2024"
cap-location: bottom
title-block-banner: true
format: html
code-link: true
code-tools: true
theme: custom.scss
toc: true
toc-title: "Lista de Atividades"
editor: visual
editor_options:
chunk_output_type: console
---
# Atividade de manipulação dos dados - `Tidyrverse`
quarto-executable-code-5450563D
```r
#| warning: False
#| code-fold: true
library(tidyverse)
library(knitr)
library(kableExtra)
library(tidyverse)
library(tinytex)
egg <- readr::read_csv('https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2023/2023-04-11/egg-production.csv')
```
# Exercício 1 - removendo colunas de um conjunto de dados
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 1. Remover a última coluna do dataset (a coluna chamada source)."
#| warning: False
#| code-fold: true
egg1 <- select(egg, - source)
kable1 <- kable(head(egg1))
kable_styling(kable1, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#DC143C")
```
# Exercício 2 - selecionando variáveis numéricas de um conjunto de dados.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 2. Selecionar apenas as variáveis numéricas."
#| warning: False
#| code-fold: true
number <- select_if(egg, is.numeric)
kable2 <- kable(head(number))
kable_styling(kable2, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#FF8C00")
```
# Exercício 3 - criando subconjuntos a partir de um conjunto de dados.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 3. Criar um dataset só com hatching e outro dataset apenas com table eggs."
#| warning: False
#| code-fold: true
hatching_tab <- filter(egg, prod_type == "hatching eggs") #apenas hatching
tab_eggs <- filter(egg, prod_type == "table eggs") #apenas table eggs
kable3 <- kable(head(hatching_tab), caption = "Tabela 3.1. Hatching Eggs")
kable4 <- kable(head(tab_eggs), caption = "Tabela 3.2. Table Eggs")
kable_styling(kable3, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#1E90FF")
kable_styling(kable4, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#3CB371")
```
# Exercício 4 - criando subconjuntos a partir de fatores específicos dentro do conjunto de dados.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 4. Criar um dataset só com table eggs e todos os processos (all)."
#| warning: False
#| code-fold: true
selection <- filter(egg, prod_type == "table eggs"& prod_process == "all")
kable5 <- kable(head(selection))
kable_styling(kable5, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#FF6347")
```
# Exercício 5 - mudando nome das variáveis.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 5. Mudar os nomes das variáveis para português."
#| warning: False
#| code-fold: true
nomes_br <- rename(egg, `Mês observado` = observed_month, `Tipo de produção` = prod_type, `Processo de produção` = prod_process, `Número de galinhas` = n_hens, `Número de ovos`= n_eggs, Fonte = source)
kable6 <- kable(head(nomes_br))
kable_styling(kable6, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#FFD700")
```
# Exercício 6 - mudando nomes de fatores dentro de variáveis específicas.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 6. Mudar os nomes dos fatores para português."
#| warning: False
#| code-fold: true
new_factors <- mutate(nomes_br, `Tipo de produção` = recode(`Tipo de produção`, `hatching eggs` = "ovos de incubação", `table eggs` = "ovos de consumo"), `Processo de produção` = recode(`Processo de produção`, all = "todos os processos", `cage-free (non-organic)` = "livre de gaiolas: não orgânico", `cage-free (organic)` = "livre de gaiolas: orgânico"))
kable7 <- kable(head(new_factors))
kable_styling(kable7, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#8B008B")
```
# Exercício 7 - criando nova variável a partir da combinação de variáveis pré-existentes.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 7. Criar uma nova variável chamada ‘produtividade’ com a razão entre número de ovos (n_eggs) e número de galinhas (n_hens)."
#| warning: False
#| code-fold: true
new.variable <- mutate(new_factors, Produtividade = (`Número de ovos`/`Número de galinhas`)) #feito com a tabela traduzida.
kable8 <- kable(head(new.variable))
kable_styling(kable8, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#FF1493")
```
# Exercício 8 - criando subconjunto de dados a partir de uma seleção específica das variáveis.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 8. Criar um dataset só de produtos cage free e criar novas variáveis separando n_eggs e n_hens por orgânicos e não orgânicos."
#| warning: False
#| code-fold: true
sep <- egg1 %>% filter(prod_process !="all") %>% separate(prod_process, into = c("process", "type"), sep= " ") %>% pivot_wider(names_from = type, values_from = c(n_hens, n_eggs)) #inglês
kable9 <- kable(head(sep), caption = "Tabela 8.1. Cage-free/ Eggs and hens / Organic and non-organic")
kable_styling(kable9, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#4169E1")
sep2 <- new_factors %>%
select(- Fonte) %>%
filter(`Processo de produção`%in% c("livre de gaiolas: não orgânico", "livre de gaiolas: orgânico")) %>%
separate(`Processo de produção`, into = c("processo", "tipo"), sep=": ") %>%
pivot_wider(names_from = tipo, values_from = c(`Número de galinhas`, `Número de ovos`)) #português
kable10 <- kable(head(sep2), caption = "Tabela 8.2. Livre de gaiolas/ Ovos e galinhas/ Orgânico e não-orgânico")
kable_styling(kable10, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#FFE4E1")
```
# Exercício 9 - combinando duas variáveis numéricas em uma única coluna.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 9. Criar uma variável categórica com os fatores n_eggs e n_hens, combinando seus valores em uma única coluna."
#| warning: False
#| code-fold: true
categ <- egg %>% pivot_longer(4:5, names_to = "Eggs and hens", values_to = "egg/hens")
kable11 <- kable(head(categ))
kable_styling(kable11, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#B22222")
```
# Exercício 10 - sumarizando dados (média, desvio, etc) de acordo com fatores específicos de cada variável.
quarto-executable-code-5450563D
```r
#| tbl-cap: "Tabela 10. Faça um sumário dos dados com as médias de n_hens e n_eggs por ano, por produto e por processo."
#| warning: False
#| code-fold: true
sum <- egg %>% separate(observed_month, into = c("year", "month", "day"), sep = "-") %>% select(-month, -day, -source) %>% group_by(year, prod_type,prod_process) %>% summarise_all(mean)
kable12 <- kable(head(sum), caption = "Tabela 10.1. Sumário")
kable_styling(kable12, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#1E90FF")
sum2 <- egg %>% separate(observed_month, into = c("year", "month", "day"), sep = "-") %>% group_by(year, prod_type, prod_process) %>% summarise(Média_ovos = mean(n_eggs), Média_galinha = mean(n_hens)) #anotherway
kable13 <- kable(head(sum2), caption = "Tabela 10.2. Sumário")
kable_styling(kable13, full_width = F, bootstrap_options = c("striped","hover","condensed")) %>%
row_spec(1:6, background = "#3CB371")
```
## Obrigada minha friend Amandja pela ajuda!
{width="50%"}
# FIM