climas = read_csv(here::here("data/clima_cg_jp-semanal.csv"),
col_types = "cTdddddd")
glimpse(climas)
## Rows: 2,748
## Columns: 8
## $ cidade <chr> "Campina Grande", "Campina Grande", "Campina Grande", "Campina …
## $ semana <dttm> 1992-12-27, 1993-01-03, 1993-01-10, 1993-01-31, 1993-02-07, 19…
## $ tmedia <dbl> 26.13333, 26.11905, 25.76667, 25.74000, 26.31429, 26.28571, 26.…
## $ tmax <dbl> 30.4, 32.4, 32.2, 32.0, 32.7, 32.7, 32.3, 32.3, 32.1, 31.2, 32.…
## $ tmin <dbl> 20.7, 19.3, 19.7, 19.9, 19.6, 20.0, 20.4, 21.2, 19.0, 19.0, 19.…
## $ chuva <dbl> 0.0, 0.0, 0.0, 0.4, 0.3, 0.0, 4.9, 0.0, 0.0, 6.1, 0.4, 1.2, 0.0…
## $ mes <dbl> 12, 1, 1, 1, 2, 2, 2, 2, 10, 11, 11, 11, 11, 12, 12, 12, 12, 1,…
## $ ano <dbl> 1992, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 1993, 199…
Tratamento: Como João pessoa possui mais informações (ano), filtramos os dados de forma que as duas cidades possuam a mesma quantidade de informações por ano, utilizando os dados a partir do ano de 1993.
climas = climas %>%
mutate(temp_anterior = lag(tmedia, n = 1)) %>%
filter(ano > 1992)
Analisando o gráfico de densidade das duas cidades, é possível observar que Campina Grande possui uma distribuição de temperatura maior com temperaturas mais baixas em comparação com João Pessoa, onde Campina Grande apresenta um pico de temperatura pouco acima dos 25°C enquanto João Pessoa é por volta dos 28°C. Sendo assim João Pessoa a cidade mais quente.
climas %>%
ggplot(aes(x = tmedia)) +
facet_wrap(~ cidade, ncol = 1) +
geom_density(fill = "steelblue", color = "black") +
geom_rug() +
labs(
y = "Densidade",
x = "Temperatura Média"
)
Se utilizar-mos apenas o periodo de janeiro e fevereiro, deixa mais evidente que João Pessoa é a cidade mais quente, com o pico de densidade acima de 0,7 e temperatura por volta de 29°C, enquanto Campina Grande com o pico de densidade próximo a 0,5 e temperatura por volta dos 26°C.
climas %>%
filter(mes >= 1, mes <= 2) %>%
ggplot(aes(x = tmedia)) +
facet_wrap(~ cidade, ncol = 1) +
geom_density(fill = "steelblue", color = "black") +
geom_rug() +
labs(
y = "Densidade",
x = "Temperatura Média"
)
Observando o gráfico abaixo, é possível visualizar que a média de temperatura por mês durante o periodo observado ambas as cidades possuem o mesmo comportamento, com os meses de dezembro a março os meses mais quentes e de junho a setembro os meses mais frios.
climas_m <- climas %>%
group_by(cidade, mes) %>%
summarise(t_media = mean(tmedia, na.rm = TRUE), .groups = 'drop')
climas_m %>%
group_by(mes) %>%
ggplot(mapping = aes(x = mes, y = t_media, color = cidade)) +
geom_point(alpha = .75) +
scale_x_continuous(breaks = seq(min(climas_m$mes), max(climas_m$mes), by = 1)) +
labs(
y = "Temperatura média (°C)",
x = "Período (Mês)",
color = "Cidade"
)
Analisando apenas o periodo de festas juninas (junho) nas cidades nos últimos 5 anos, observamos que Campina Grande possui a temperatura mais baixa no periodo junino comparado a João Pessoa, sendo um clima mais agradável para aproveitar esse momento de festividade.
climas %>%
filter(mes == 6, ano > 2014) %>%
ggplot(aes(x=tmedia)) +
facet_wrap(~ cidade, ncol = 1) +
geom_density(fill = "coral", color = "black") +
geom_rug() +
labs(
y = "Densidade",
x = "Temperatura média (°C)"
)
Em média, Campina Grande chove bem menos que João Pessoa, com João Pessoa apresentando mais que o dobro de chuva em relação a Campina Grande.
climas %>%
group_by(cidade) %>%
summarise(chuva_media = mean(chuva))
## # A tibble: 2 × 2
## cidade chuva_media
## <chr> <dbl>
## 1 Campina Grande 14.0
## 2 João Pessoa 32.7
Analisando o histograma abaixo, ambas as cidades apresentam assimetria na distribuição de chuva, com cauda maior à direita e longa, com João Pessoa possuindo a cauda mais longa e Campina Grande com pico maior de semanas sem chuva.
climas %>%
ggplot(aes(x = chuva)) +
facet_wrap(~ cidade, ncol = 1) +
geom_histogram(binwidth = 10, color = "#F6511D", fill = "white")
Para as duas cidades a relação entre a temperatura de uma semana e a temperatura da semana anterior é positiva forte, com valores acima de 0,8.
CG <- climas %>%
filter(cidade=="Campina Grande")
JP <- climas %>%
filter(cidade=="João Pessoa")
correlacao <- data.frame( Cidade = c("Campina Grande", "João Pessoa"), Correlação = c(cor(CG$tmedia, CG$temp_anterior, method = 'pearson'), cor(JP$tmedia, JP$temp_anterior, method = 'pearson')))
correlacao
## Cidade Correlação
## 1 Campina Grande 0.8801680
## 2 João Pessoa 0.8564175
Para as duas cidades, a relação entre a temperatura e chuva é negativa fraca, como demonstrado nas correlações abaixo.
CG <- climas %>%
filter(cidade=="Campina Grande", chuva > 0)
JP <- climas %>%
filter(cidade=="João Pessoa", chuva > 0)
correlacao <- data.frame( Cidade = c("Campina Grande", "João Pessoa"), Correlação = c(cor(CG$tmedia, CG$chuva, method = 'pearson'), cor(JP$tmedia, JP$chuva, method = 'pearson')))
correlacao
## Cidade Correlação
## 1 Campina Grande -0.3354837
## 2 João Pessoa -0.4373785