Pular para o conteúdo principal

Veja como facilmente criar gráficos dos dados disponíveis nesse pacote.

library(amazonasdatahub)

Tutoriais das bases de dados

Para cada base de dados, você pode verificar a documentação correspondente usando um ? (ponto de interrogação) antes do nome da base de dados.

?agriculture_idam
?aids_amazonas
?humidity_manaus
?malaria_amazonas
?pib_trimestral
?rionegro_amazonas
?school_read_levels

Gráfico de Dispersão entre Área plantada e Área colhida de produção de Mandioca

A base de dados agriculture_idam fornece dados de produção agrícola do Amazonas. Podemos visualizar a dispersão da área plantada e da área colhida de diferentes produções, mas para esse exemplo, usaremos dados de produção de mandioca.

Para plotar um gráfico de dispersão simples no R, sem utilizar outros pacotes, utilizaremos a função plot.

# Filtrando dados
mandioca_prod <- agriculture_idam[agriculture_idam$cultivation == "Mandioca", ]

# Plotando o grafico
plot(
mandioca_prod$planted,
mandioca_prod$harvested,
xlab = "Área plantada (hectare)",
ylab = "Área colhida (hectare)",
main = "Produção de mandioca no Amazonas",
sub = "Área plantada x Área colhida"
)

Série temporal da contagem de casos de AIDS em Manaus

A base de dados aids_amazonas fornece dados das ocorrências de AIDS nos municípios do Amazonas.

Uma das análises que podem ser feitas é: verificar a série temporal da contagem de casos filtrado de determinado município, onde os casos são agrupados pelo sexo do indivíduo observado. Para fazer isso, utilizaremos os pacotes dplyr para estruturar os dados, e o ggplot para fazer o gráfico e customizá-lo.

# install.packages(c("dplyr", "ggplot2"))
require(dplyr)
require(ggplot2)

# Filtrando dados, agrupando e plotando:
aids_amazonas %>%
filter(name_muni == "Manaus") %>%
group_by(gender) %>%
ggplot(aes(x = year, y = cases, group = gender, color = gender)) +
geom_line() +
scale_color_manual(values = c("blue", "red")) +
theme_minimal() +
labs(
title = "Contagem de casos de AIDS em Manaus (2011-2023)",
x = "Ano",
y = "Contagem",
color = "Gênero"
)

Série temporal da umidade relativa de Manaus (2010 - 2020)

Com o conjunto de dados humidity_manaus, que reune dados de umidade relativa observados na cidade de Manaus de janeiro de 2009 a dezembro de 2020, podemos verificar séries temporais, e dentre elas, a da umidade relativa durante esse intervalo de tempo.

Usando dplyr, podemos criar uma coluna de data, que será composta pelos dados de mês e ano, e com o ggplot2, podemos criar o gráfico.

# install.packages(c("dplyr", "ggplot2"))
require(dplyr)
require(ggplot2)

# Criando variavel de data unindo ano e mes, e em seguida,
# plotando o grafico
humidity_manaus %>%
mutate(date = as.Date(paste0(year, "-", month, "-","01"))) %>%
ggplot(aes(x = date, y = rh)) +
geom_line() +
theme_minimal() +
labs(
title = "Umidade Relativa de Manaus (2010 - 2020)",
x = "Data",
y = "Umidade Relativa"
)

Série temporal do PIB trimestral do Amazonas

Com os dados de pib_trimestral, podemos realizar análises a respeito dos padrões observados na distribuição de dados pelo intervalo observado (2010 a 2021).

Utilizando dplyr, podemos selecionar as variáveis de interesse, e com o ggplot2, criaremos um gráfico de linha. Esse exemplo mostrará essa aplicação, além de customizações mais avançadas, incluindo cores, formatação de fonte do título e tipos de linha.

require(dplyr)
require(ggplot2)

pib_trimestral %>%
select(year, taxes) %>%
ggplot(., aes(x = year, y = taxes)) +
geom_line(linewidth = 1L, colour = "#cb181d") +
geom_hline(
yintercept = mean(pib_trimestral$taxes),
linetype = "dashed",
size = 1
) +
theme_light() +
theme(
plot.title = element_text(face = "bold", size = 16)
) +
labs(
x = "Ano",
y = "Impostos",
title = "PIB Trimestral do Amazonas",
subtitle = "De 2010 a 2021"
)

Boxplots do nível de água (em metros) do Rio Negro (Amazonas)

Com os dados do nível de água e ano do rionegro_amazonas, uma das análises que podem ser feitas é a dos boxplots no decorrer dos anos.

Utilizaremos o ggplot2 para fazer esse gráfico.

require(ggplot2)

rionegro_amazonas %>%
ggplot(aes(x = year, y = level_m, group = year)) +
stat_boxplot(geom = "errorbar") +
geom_boxplot() +
theme_minimal() +
labs(
x = "Ano",
y = "Nível do rio (m)"
)

Code
require(dplyr)
require(ggplot2)

# Filtrando datas para o segundo semestre de 2010
rionegro_amazonas_2010_02 <- rionegro_amazonas %>%
filter(date >= "2010-06-01" & date <= "2010-12-31")

# Visualização Gráfica
rionegro_amazonas_2010_02 %>%
ggplot(., aes(x = date, y = level_m)) +
geom_line(size = 1L, colour = "#006994") +
geom_hline(
aes(
yintercept = mean(rionegro_amazonas_2010_02$level_m),
color = "Média"
),
linetype = "dashed",
size = 1
) +
geom_hline(
aes(
yintercept = min(rionegro_amazonas_2010_02$level_m),
color = "Mínimo"
),
linetype = "dotted",
size = 1
) +
geom_hline(
aes(
yintercept = max(rionegro_amazonas_2010_02$level_m),
color = "Máximo"
),
linetype = "dotted",
size = 1
) +
scale_color_manual(
name = "Estatísticas",
values = c(
"Média" = "orange",
"Mínimo" = "red",
"Máximo" = "green"
)) +
scale_x_date(
date_breaks = "1 month"
) +
theme_light() +
theme(
plot.title = element_text(face = "bold", size = 16)
) +
labs(
x = "Ano",
y = "Nível do rio em metros",
title = "Nível do Rio Negro do 2º semestre de 2010"
)

Dados faltantes e outliers

Parte do trabalho do Estatístico é identificar e encontrar certos erros e incoerências nos dados. Vejamos que o gráfico acima mostra que o nível do Rio Negro em metros esteve em 0. Isso é estranho e incomum, pois indicaria que o rio secou totalmente.

Podemos concluir que esses valores “0”, vistos no gráfico dos Boxplots, correspondem a dados ausentes (NA), os quais foram preenchidos com o valor zero. Iremos substituir esses valores zero por NAs.

require(tidyr)
rionegro_amazonas_2010_02 <- rionegro_amazonas_2010_02 %>%
mutate(
level_m = case_when(
date == "2010-08-07" ~ NA_real_,
date == "2010-12-22" ~ NA_real_,
TRUE ~ as.numeric(level_m)
),
increase_decrease_cm = case_when(
date == "2010-08-07" ~ NA_real_,
date == "2010-12-22" ~ NA_real_,
TRUE ~ as.numeric(increase_decrease_cm)
)
)

Tratamento de Valores Faltantes (NA)

Agora que definimos os valores faltantes, podemos escolher um método para tratá-los. Nesse exemplo, usaremos o Foward-Fill, mas encorajamos você a pesquisar e tentar utilizar outros métodos para aprender diferentes formas de tratamentos de valores faltantes.

require(tidyr)

rionegro_amazonas_2010_02 <- rionegro_amazonas_2010_02 %>%
fill(level_m, increase_decrease_cm)

Com os dados tratados, podemos refazer o gráfico e visualizar o nível do Rio Negro.

Visualização Gráfica do nível Rio Negro (2010/2)

Code
require(dplyr)
require(ggplot2)

# Visualização Gráfica
rionegro_amazonas_2010_02 %>%
ggplot(., aes(x = date, y = level_m)) +
geom_line(size = 1L, colour = "#006994") +
geom_hline(
aes(
yintercept = mean(rionegro_amazonas_2010_02$level_m),
color = "Média"
),
linetype = "dashed",
size = 1
) +
geom_hline(
aes(
yintercept = min(rionegro_amazonas_2010_02$level_m),
color = "Mínimo"
),
linetype = "dotted",
size = 1
) +
geom_hline(
aes(
yintercept = max(rionegro_amazonas_2010_02$level_m),
color = "Máximo"
),
linetype = "dotted",
size = 1
) +
scale_color_manual(
name = "Estatísticas",
values = c(
"Média" = "orange",
"Mínimo" = "red",
"Máximo" = "green"
)) +
scale_x_date(
date_breaks = "1 month"
) +
theme_light() +
theme(
plot.title = element_text(face = "bold", size = 16)
) +
labs(
x = "Ano",
y = "Nível do rio em metros",
title = "Nível do Rio Negro (ajustado) do 2º semestre de 2010"
)

Portanto, é notável que o tratamento desses valores outliers, que foram considerados faltantes fez toda diferença na conclusão sobre os dados do nível do Rio Negro.