Exercicio Manipulação
Exercicio 1 remover source
egg <- readr::read_csv(‘https://raw.githubusercontent.com/rfordatascience/tidytuesday/master/data/2023/2023-04-11/egg-production.csv’)
eggproduction_egg <- eggproduction_egg %>% select(-source):
Exercicio 2
- seleccionar so variaves numericas
num <- egg %>% select(where(is.numeric))
Exercicio 3 . criando subconjuntos a partir de um conjunto de dados
##Criar um dataset só com hatching e outro dataset apenas com table eggs
Filtrando el dataset para quedarse solo com hatching
hatching_data <- egg %>% filter(prod_type == “hatching eggs”)
##hatching_data <- eggproduction_egg %>% ##filter(prod_type != “hatching”)
Filtrando el dataset para quedarse solo com table eggs
table_eggs_data <- egg %>% filter(prod_type == “table eggs”)
Exercício 4 - criando subconjuntos a partir de fatores específicos dentro do conjunto de dados
##Criar um dataset só com table eggs e todos os processos (all) table_eggs_all <- egg %>% filter(prod_type == “table eggs”) View(table_eggs_all)
Exercício 5 - mudando nome das variáveis
##Mudar os nomes das variáveis para português
library(dplyr)
egg_es <- egg %>% rename( mes_observacion = observed_month, tipo_producto = prod_type, produ_procesado = prod_process, n_gallinas = n_hens, n_huevos = n_eggs )
6 - mudando nomes de fatores dentro de variáveis específicas
##Mudar os nomes dos fatores para português
install.packages(“forcats”) library(forcats)
egg_es <- egg %>% rename( mes_observacion = observed_month, tipo_producto = prod_type, produ_procesado = prod_process, n_gallinas = n_hens, n_huevos = n_eggs ) %>% mutate( tipo_producto = fct_recode( tipo_producto, “Huevos de mesa” = “table eggs”, “Huevos de incubación” = “hatching eggs” ) )
Exercício 7 - criando nova variável a partir da combinação de variáveis pré-existentes
#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)
library(dplyr)
Crear a nova variável ‘produtividade’
egg_es <- egg_es %>% mutate(produtividade = n_gallinas / n_huevos)
Criar a nova variável ‘produtividade’, evitando divisão por zero
egg_es <- egg_es %>% mutate(produtividade = ifelse(n_gallinas > 0, n_huevos / n_gallinas, NA))
Exercício 8 - criando subconjunto de dados a partir de uma seleção específica das variáveis
##Criar um dataset só de produtos cage free e criar novas variáveis separando n_eggs e n_hens por organicos e não orgânicos
library(tidyr)
eggproduction_long <- egg_es %>% pivot_longer(cols = c(n_gallinas, n_huevos), names_to = “variable”, values_to = “valor”) View(eggproduction_long)
#otra forma e hacer el punto 8
names(egg_es)
sep <- egg_es %>% filter(produ_procesado !=“all”) %>% separate(produ_procesado, into = c(“produ_procesado”, “tipo_producto”), sep =” “) %>% pivot_wider(names_from = tipo_producto, values_from = c(productividade, n_huevos))
Exercício 9 - combinando duas variáveis numéricas em uma única coluna
##Criar uma variável categórica com os fatores n_eggs e n_hens, combinando seus valores em uma única coluna
junto <- egg_es %>% pivot_longer(cols = 4:5, names_to = “productividade”, values_to = “value”)
Unir la columna ‘n_gallinas’ en una nueva columna ‘produtividade’
egg_es <- egg_es %>% unite(“productividade”, n_gallinas, sep = “//”)
categ <- egg %>% pivot_longer(4:5, names_to = “Eggs and hens”, values_to = “egg/hens”)
Exercício 10 - sumarizando dados (média, desvio, etc) de acordo com fatores específicos de cada variável
##Faça um sumário dos dados com as médias de n_hens e n_eggs por ano, por produto e por processo
library(dplyr) library(tidyr)
#Separar la columna ‘observed_month’ y agrupar por ‘year’, ‘prod_type’, y ‘prod_process’ sum <- egg %>% separate(observed_month, into = c(“year”, “month”, “day”), sep = “-”) %>% select(-month, -day) %>% # Solo selecciona las columnas que existen group_by(year, prod_type, prod_process) %>% # Usar los nombres en español summarise(across(everything(), ~ mean(.x, na.rm = TRUE), .names = “mean_{.col}”), .groups = ‘drop’) # Usar una función anónima
Ver el resultado
print(sum)