library(tidyverse)
library(here)
library(ggplot2)
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 %>%
mutate(temp_anterior = lag(temp_media, n = 1)) %>%
filter(!is.na(temp_media), !is.na(temp_anterior))
clima_cg = clima %>%
filter(cidade == "Campina Grande")
clima_jp = clima %>%
filter(cidade == "João Pessoa")
clima_p = clima %>%
filter(cidade == "Patos")
clima_cg %>%
ggplot(aes(x = temp_media, y = temp_anterior)) +
geom_point(alpha = .2, color = "red") +
geom_vline(xintercept = mean(clima_cg$temp_media)) +
geom_hline(yintercept = mean(clima_cg$temp_anterior))+
labs(
x = "Temperatura média semanal",
y = "Temperatura média da semana anterior"
)
clima_cg %>%
summarize(correlacao = cor(temp_media, temp_anterior, method = "pearson"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 0.859
Existe uma correlação forte da temperatura de uma semana com a temperatura da semana anterior. Visualmente podemos perceber uma concentração no segundo e terceiro quadrante, formados pelas linhas que mostram a média de ambas as variáveis. Essa concentração indica uma correlação positiva entre as variáveis, que é confirmado pelo coeficiente de correlação de Pearson, cujo valor foi aproximadamente 0.85, indicando uma correlação forte positiva.
clima_jp %>%
ggplot(aes(x = temp_media, y = temp_anterior)) +
geom_point(alpha = .2, color = "red") +
geom_vline(xintercept = mean(clima_jp$temp_media)) +
geom_hline(yintercept = mean(clima_jp$temp_anterior))+
labs(
x = "Temperatura média semanal",
y = "Temperatura média da semana anterior"
)
clima_jp %>%
summarize(correlacao = cor(temp_media, temp_anterior, method = "pearson"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 0.820
Com João Pessoa acontece comportamento parecido do visto em Campina Grande, as duas variáveis tem uma correlação positiva alta. Mas com João Pessoa é percebido um espalhamento maior do terceiro quadrante, que faz com que a correlação não seja tão forte. Isso pode ser confirmado com o coeficiente de correlação de Pearson que no caso de João Pessoa é um pouco menor, aproximadamente 0,81.
clima_p %>%
ggplot(aes(x = temp_media, y = temp_anterior)) +
geom_point(alpha = .2, color = "red") +
geom_vline(xintercept = mean(clima_p$temp_media)) +
geom_hline(yintercept = mean(clima_p$temp_anterior))+
labs(
x = "Temperatura média semanal",
y = "Temperatura média da semana anterior"
)
clima_p %>%
summarize(correlacao = cor(temp_media, temp_anterior, method = "pearson"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 0.819
Com Patos também tem uma correlação positiva alta entre a temperatura de uma semana e a temperatura da semana anterior. Com um coeficiente um pouco menor que no caso de Campina Grande, aproximadamente 0,81. Mas diferente de Campina Grande o espalhamento pode ser visto tanto no segundo, como no terceiro quadrante.
No geral para as três cidades a temperatura de semanas seguidas tem uma correlação alta e positiva, ou seja, quando um aumenta a outra aumenta também.
clima_choveu = clima %>%
filter(chuva > 0)
clima_choveu_cg = clima_choveu %>%
filter(cidade == "Campina Grande")
clima_choveu_jp = clima_choveu %>%
filter(cidade == "João Pessoa")
clima_choveu_p = clima_choveu %>%
filter(cidade == "Patos")
clima_choveu_cg %>%
ggplot(aes(x = log10(temp_media), y = log10(chuva))) +
geom_point(alpha = .2, color = "blue") +
geom_vline(xintercept = mean(log10(clima_choveu_cg$temp_media))) +
geom_hline(yintercept = mean(log10(clima_choveu_cg$chuva))) +
labs(
x = "Log da temperatura média semanal",
y = "Log da chuva semanal"
)
clima_choveu_cg %>%
summarise(correlacao = cor(log10(temp_media), log10(chuva), method = "pearson"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 -0.407
Observando os valores das chuvas e a temperatura média em Campina Grande percebemos que não existe correlação entre essas duas variáveis. Mas ao aplicarmos um função logaritma de base 10 nos valores de ambas as variáveis percebemos uma correlação negativa, que é comprovada pelo coeficiente de correlação de pearson, cujo valor encontrado foi de aproximadamente -0.40.
clima_choveu_jp %>%
ggplot(aes(x = log10(temp_media), y = log10(chuva))) +
geom_point(alpha = .2, color = "blue") +
geom_vline(xintercept = mean(log10(clima_choveu_jp$temp_media))) +
geom_hline(yintercept = mean(log10(clima_choveu_jp$chuva))) +
labs(
x = "Log da temperatura média semanal",
y = "Log da chuva semanal"
)
clima_choveu_jp %>%
summarise(correlacao = cor(log10(temp_media), log10(chuva), method = "pearson"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 -0.439
O mesmo acontece com João Pessoa, onde não existe correlação entre os valores de chuva e temperatura média. Já utilizando uma função logaritma de base 10 uma correlação negativa existe, sendo comprovada pelo coeficiente de coorelação de pearson das duas variáveis que foi calculado e cujo valor foi aproximadamente -0.43.
clima_choveu_p %>%
ggplot(aes(x = temp_media, y = chuva)) +
geom_point(alpha = .2, color = "blue") +
geom_vline(xintercept = mean(clima_choveu_p$temp_media)) +
geom_hline(yintercept = mean(clima_choveu_p$chuva)) +
labs(
x = "Temperatura média semanal",
y = "Chuva semanal"
)
clima_choveu_p %>%
summarise(correlacao = cor(temp_media, chuva, method = "pearson"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 -0.108
clima_choveu_p %>%
ggplot(aes(x = log10(temp_media), y = log10(chuva))) +
geom_point(alpha = .2, color = "blue") +
geom_vline(xintercept = mean(log10(clima_choveu_p$temp_media))) +
geom_hline(yintercept = mean(log10(clima_choveu_p$chuva))) +
labs(
x = "Log da temperatura média semanal",
y = "Log da chuva semanal"
)
clima_choveu_p %>%
summarise(correlacao = cor(log10(temp_media), log10(chuva), method = "pearson"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 -0.0741
Em Patos utilizando os valores brutos ou utilizando os valores após aplicar a função logaritma não é encontrada uma correlação moderada nem forte. Visualizando os dados podemos perceber que os valores, em ambos, estão espalhados nos quadrantes sem nenhuma concentração específica que indique uma correlação.
clima = clima %>%
mutate(temp_1ybehind = lag(temp_media, n = 52)) %>%
filter(!is.na(temp_1ybehind))
clima %>%
ggplot(aes(x = temp_media, y = temp_1ybehind)) +
geom_point(alpha = .1) +
geom_vline(xintercept = mean(clima$temp_media)) +
geom_hline(yintercept = mean(clima$temp_1ybehind))+
labs(
x = "Temperatura média semanal",
y = "Temperatura média da mesma semana no ano anterior"
)
clima %>%
summarize(correlacao = cor(temp_media, temp_1ybehind, method = "pearson"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 0.833
A tempetura média da semana das três cidade tem uma correlação forte e positiva com a tempetura da mesma semana no ano anterior. O coeficiente de coorelação de pearson nos mostra isso também, nos dando um valor de aproximadamente 0.83, temos uma correlação positiva forte entre as duas variáveis.
clima = clima %>%
mutate(chuva_anterior = lag(chuva, n = 1)) %>%
filter(!is.na(chuva_anterior))
clima %>%
ggplot(aes(x = log10(chuva), y = log10(chuva_anterior))) +
geom_point(alpha = .1) +
labs(
x = "Chuva média semanal",
y = "Chuva da semana anterior"
)
clima %>%
summarize(correlacao = cor(log10(chuva), log10(chuva_anterior), method = "spearman"))
## # A tibble: 1 x 1
## correlacao
## <dbl>
## 1 0.555
Visualizando o gráfico não é possível perceber alguma correlação entre a chuva média de uma semana e a chuva média da semana anterior. Mas utilizando o coeficiente de correlação de postos de spearman temos um valor de correlação de aproximadamente 0.55. Esse coeficiente utiliza o rank dos valores da variável e a correlação é feita não de acordo com o valor em si e sim com a posição daquele valor, ou posto, no rank. Em relação ao rank podemos ver que existe uma correlação moderada e positiva entre as duas variáveis.