Análise de dados sobre incêndios florestais no Brasil

Os incêndios florestais são um grave problema para a preservação das Florestas Tropicais. Compreender a frequência de incêndios florestais em uma série temporal pode ajudar a tomar medidas para evitá-los. O Brasil tem a maior floresta tropical do planeta que é a floresta amazônica.


Informações sobre as variáveis

year: ano do registro.

state: estado brasileiro.

month: mês do registro (em português).

number: número de focos de incêndio.

date: data correspondente ao início do mês/ano.


# Carregamento dos pacotes necessários:

library(tidyverse)


# Carregamento da base de dados:

dados <- read.csv("C:\\Users\\tiran\\OneDrive\\Área de Trabalho\\Dados_Indendio.csv")

# Visualização inicial na base de dados:

head(dados)
##   year state   month number       date
## 1 1998  Acre Janeiro      0 1998-01-01
## 2 1999  Acre Janeiro      0 1999-01-01
## 3 2000  Acre Janeiro      0 2000-01-01
## 4 2001  Acre Janeiro      0 2001-01-01
## 5 2002  Acre Janeiro      0 2002-01-01
## 6 2003  Acre Janeiro     10 2003-01-01

# Verificação de dados nulos:

sum(is.na(dados))
## [1] 0
# Estatística Descritiva Básica:

summary(dados)
##       year         state              month               number     
##  Min.   :1998   Length:6454        Length:6454        Min.   :  0.0  
##  1st Qu.:2002   Class :character   Class :character   1st Qu.:  3.0  
##  Median :2007   Mode  :character   Mode  :character   Median : 24.0  
##  Mean   :2007                                         Mean   :108.3  
##  3rd Qu.:2012                                         3rd Qu.:113.0  
##  Max.   :2017                                         Max.   :998.0  
##      date          
##  Length:6454       
##  Class :character  
##  Mode  :character  
##                    
##                    
## 
# Contar valores únicos de todas as colunas:

sapply(dados, function(x) length(unique(x)))
##   year  state  month number   date 
##     20     23     12   1479     20

Total de queimadas por ano

# Análise de incendios por ano:

incendios_ano <- dados %>%
  group_by(year) %>%
  summarise(total_incendios = sum(number)) %>%
  arrange(desc(total_incendios))

# Exibindo:

incendios_ano
## # A tibble: 20 × 2
##     year total_incendios
##    <int>           <dbl>
##  1  2003          42761.
##  2  2016          42212.
##  3  2015          41208.
##  4  2012          40085.
##  5  2014          39621.
##  6  2009          39117.
##  7  2004          38453.
##  8  2002          37391.
##  9  2010          37037.
## 10  2017          36686.
## 11  2013          35146.
## 12  2005          35005.
## 13  2011          34634.
## 14  2006          33832.
## 15  2007          33037.
## 16  2008          29379.
## 17  2001          29072.
## 18  2000          27351.
## 19  1999          26883.
## 20  1998          20014.
# Vamos plotar um gráfico para uma visualização mais detalhada: 

incendios_ano %>%
  ggplot(aes(x = year, y = total_incendios)) +
  geom_line(color = "red") +
  labs(title = "Número de incendios ao longo do tempo",
       x= "Ano",y= "Número de incendios"   
       )


Comentários: Podemos observar tanto pelo gráfico quanto pela tabela que o ano de 2003 foi o ano com maior número de incendios.


Descobrimos que o ano de 2003 foi o ano com maior número de incendios, que tal agora descobrirmos qual foi o mes com maior número de incendios ?


incendios_mes <- dados %>%
  group_by(month) %>%
  summarise(total_incendios = sum(number,na.rm = TRUE)) %>%
  arrange(desc(total_incendios))


incendios_mes
## # A tibble: 12 × 2
##    month     total_incendios
##    <chr>               <dbl>
##  1 Julho              92326.
##  2 Outubro            88682.
##  3 Agosto             88050.
##  4 Novembro           85508.
##  5 Setembro           58578.
##  6 Dezembro           57535.
##  7 Junho              56011.
##  8 Janeiro            47748.
##  9 Maio               34731.
## 10 Fevereiro          30848.
## 11 Mar�o              30717.
## 12 Abril              28189.
# Visualização:

# Converter o mês para fator ordenado pela soma:


meses_ordem <- c("Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", 
                 "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro")

incendios_mes$month <- factor(incendios_mes$month, levels = meses_ordem)


# Criando um gráfico de barras para visualização:


incendios_mes %>%
  ggplot(aes(x = month, y = total_incendios,fill = month)) + 
  geom_bar(stat = "identity",color = "black") + labs(title = "Total de Incêndios por Mês", x = "Mês", y = "Total de Incêndios") + 
  theme_minimal() + 
  theme(axis.text.x = element_text(angle = 45, hjust = 1))

Comentários: Podemos observar facilmente com o gráfico de barras que os meses com maior número de incendios são: Julho, Agosto, outubro e novembro.


Quais foram os 5 estados com mais queimadas em todo o período?

incendios_estado <- dados %>%
  group_by(state) %>%
  summarise(total_incendios = sum(number, na.rm = TRUE)) %>%
  arrange(desc(total_incendios)) %>%
  head(5)


incendios_estado
## # A tibble: 5 × 2
##   state       total_incendios
##   <chr>                 <dbl>
## 1 Mato Grosso          96246.
## 2 Paraiba              52436.
## 3 Sao Paulo            51121.
## 4 Rio                  45161.
## 5 Bahia                44746.
incendios_estado %>%
  ggplot(aes(x = state, y = total_incendios,fill=state)) + 
  geom_col(color="black") +
  labs("Top 5 estados com maior número de incendios",
       x = "Estado",
       y = "Número de incendios")

Comentários: Conseguimos encontrar que os estados que estão tendo um maior número de incendios são: Mato Grosso, Paraiba e são paulo. Tendo Mato Grosso com um maior destaque. Mas será que o Mato Grosso tem um destaque grande assim ao longo de todo o período ? Vamos descobrir isso na próxima análise ao longo do tempo.


Vamos fazer uma observação agora ao longo do tempo e descobrir a evolução do número de queimadas dos 10 estados com maior número de queimadas!

# os 10 estados com mais queimadas no total:

top10_estados_queimadas <- dados %>%
  group_by(state) %>%
  summarise(total_queimadas = sum(number, na.rm = TRUE)) %>%
  arrange(desc(total_queimadas)) %>%
  head(10)

# Filtrar os dados apenas para esses estados

dados_top10 <- dados %>%
  filter(state %in% top10_estados_queimadas$state)

# Agrupar por estado e ano, somar o total de queimadas:

evolucao_estados <- dados_top10 %>%
  group_by(state,year) %>%
  summarise(total_queimadas = sum(number, na.rm = TRUE)) %>%
  ungroup()

# Visualização:

evolucao_estados %>%
  ggplot(aes(x = year, y = total_queimadas, color = state)) +
  geom_line(size=1) +
  labs(title = "Evolução do Número de Queimadas - Top 10 Estados",
       x = "Ano",
       y= "Total de queimadas", color = "Estado")

Comentários: Fica possível de observar que o Mato Grosso realmente fica bem destacado com um grande número de queimadas mesmo ao longo do tempo. Ou seja, é um estado que realmente precisa de uma atenção melhor.