library(tidyverse)
library(here)
theme_set(theme_bw())
# SEMPRE read_csv NUNCA read.csv
clima_tudo = read_csv(
here("data/tempo-jp-cg-pt.csv"),
col_types = cols(
.default = col_double(),
cidade = col_character(),
semana = col_date(format = ""),
ano = col_integer(),
mes = col_integer()
)
)
clima = clima_tudo
clima %>%
slice(1:8)
## # A tibble: 8 x 11
## cidade semana temp_max temp_media temp_min vento_medio vento_max umidade
## <chr> <date> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 Campina… 2009-12-27 29.9 25.9 21.9 3.96 5 76
## 2 Campina… 2010-01-03 31.4 25.5 21.2 4.08 5.3 76.2
## 3 Campina… 2010-01-10 32.1 25.6 21.3 3.95 6.6 76.0
## 4 Campina… 2010-01-17 31 24.2 20.5 2.86 5 85.3
## 5 Campina… 2010-01-24 31.2 26.1 21.2 3.69 5.5 77.8
## 6 Campina… 2010-01-31 32.1 26.0 21.4 3.97 6.5 76.0
## 7 Campina… 2010-02-07 32.2 26.0 20.4 3.40 6.3 77.8
## 8 Campina… 2010-02-14 31.3 25.8 21.5 3.40 5.5 80.4
## # … with 3 more variables: chuva <dbl>, ano <int>, mes <int>
Nesta analise, iremos utilizar os dados de 2010-2021 e analisar as correlações entre diferentes variaveis de 3 cidades do nordeste: Patos, Campina Grande e João Pessoa.
Descreva a relação entre a temperatura de uma semana e a temperatura da semana passada nas 3 cidades
clima = clima %>%
mutate(temp_anterior = lag(temp_media, n = 1))
Primeiramente, faremos um simples grafico de pontos. É possivel ver que possa existir uma correlação positiva linear, onde a relação entre a temperatura anterior tem relação com a temperatura atual.
clima %>%
filter(!is.na(temp_anterior), !is.na(temp_media)) %>%
ggplot(aes(x= temp_media, y = temp_anterior))+
geom_point()
clima %>%
filter(!is.na(temp_anterior),!is.na(temp_media)) %>%
summarise(corr_pearson = cor(temp_media, temp_anterior, method = "pearson"))
## # A tibble: 1 x 1
## corr_pearson
## <dbl>
## 1 0.939
A partir da correlação de pearson, podemos afirmar que existe uma correlação forte positiva, evidenciando que existe uma correlação entre temperatura media com a temperatura da semana anterior.Podemos observar a existencia de uma quantidade significativa de pontos extremos, que acabam por diminuir em alguns pontos a correlação de pearson. Seu formato é expressamente linear.
Descreva a relação entre temperatura e chuvas nas semanas em que choveu nas 3 cidades
clima = clima %>%
mutate(choveu = chuva != 0)
Em um primeiro momento, não conseguimos evidenciar nenhuma relação entre chuva e temperatura.
clima %>%
filter(choveu) %>%
ggplot(aes(x = temp_media, y = chuva))+
geom_point()
Porem, ao separar os dados nas tres cidade, vemos que existe uma certa tendencia nas cidades de CG e JP. Usamos escala de log10 no eixo x para tornar mais facil a vizualização, pois possuimos alguns pontos extremos.
clima %>%
filter(choveu) %>%
ggplot(aes(x = temp_media, y = chuva))+
facet_wrap(~cidade)+
geom_point()+
scale_y_log10()
Separados por cidades, podemos calcular o coeficiente de pearson para cada cidade. Podemos observar que existe correlação entre as variaveis nas 3 cidades. Entretanto devemos evidenciar que nas 3 cidades a correlação é negativa, indicando que com valores maiores de x, os valores de y são menores.Nas cidades de JP e CG sua correlação fraca pois possui valores de pearson mais proximos de 0.4; Já Patos, podemos dizer que possui uma correlação desprezivel entre tais valores,porque está muito proxima de 0. Nessa escala logaritima, pode-se dizer que existe uma correlação linear, porem ao olharmos os dados sem escala log, não conseguimos notar uma tendencia linear
clima %>%
filter(choveu) %>%
group_by(cidade) %>%
summarise(corr_pearson = cor(temp_media, chuva, method = "spearman"))
## # A tibble: 3 x 2
## cidade corr_pearson
## <chr> <dbl>
## 1 Campina Grande -0.401
## 2 João Pessoa -0.436
## 3 Patos -0.0882
Aqui podemos ver a existencia de valores extremos em cada cidade, que acabam por diminuir o valor do coeficiente em cada cidade.
clima %>%
filter(choveu) %>%
group_by(cidade) %>%
ggplot(aes(x = temp_media, y = chuva))+
facet_wrap(~cidade)+
geom_point()