Executando regressão linear em cada conjunto de dados aninhado
Agora que você dividiu os dados de cada país em um conjunto de dados separado na coluna data, é hora de ajustar um modelo linear a cada um desses conjuntos.
A função map() do purrr funciona aplicando uma fórmula a cada item de uma lista, em que . representa o item individual. Por exemplo, você poderia somar um a cada número de uma lista:
map(numbers, ~ 1 + .)
Isso significa que, para ajustar um modelo a cada conjunto de dados, você pode fazer:
map(data, ~ lm(percent_yes ~ year, data = .))
em que . representa cada item individual da coluna data em by_year_country. Lembre-se de que cada item na coluna data é um conjunto de dados referente a um país específico.
Este exercício faz parte do curso
Estudo de caso: Análise Exploratória de Dados em R
Instruções do exercício
- Carregue os pacotes
tidyrepurrr. - Após o aninhamento, use a função
map()dentro de ummutate()para executar uma regressão linear em cada conjunto de dados (isto é, cada item na colunadataemby_year_country), modelandopercent_yescomo função deyear. Salve os resultados na colunamodel.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Load tidyr and purrr
# Perform a linear regression on each item in the data column
by_year_country %>%
nest(-country)