7. Incluindo tabelas ao relatório

Também será possível incluir e visualizar tabelas geradas pelo código em R no seu arquivo .Rmd, para que elas possam ser exibidas em seu documento final que poderá ser um PDF (.pdf), uma página da internet (.html) ou um documento para edição no Microsoft Word (.pdf).

Vamos lá! Estamos construindo o relatório epidemiológico sobre a dengue no Estado de Rosas, e agora geraremos uma tabela demonstrando a contagem de casos por classificação final para cada um dos anos epidemiológicos presentes em nossa base de dados {NINDINET.dbf}.

Observe a seguir como você poderá escrever seu script:

# Criando nova tabela com informações sobre dengue
tabela_dengue <- dengue |>
  
  # Criando nova coluna com os nomes da Classificação Final utilizando a função 
  # mutate()
  mutate(
    Classificacao = case_when(
      CLASSI_FIN == 1 ~ "Cura",
      CLASSI_FIN == 2 ~ "Óbito",
      CLASSI_FIN >= 3 ~ "Outro",
      is.na(CLASSI_FIN) ~ "Ignorado"
    )
  ) |>
  
  # Contando o número de casos por ano epidemiológico e classificação final com a 
  # função count()
  count(ano_epi, Classificacao) |>
  
  # Pivoteando a tabela para o formato "largo"
  pivot_wider(names_from = Classificacao,
              values_from = n,
              values_fill = 0) |>
  
  # Selecionando apenas as colunas de interesse
  select(ano_epi, Cura, Óbito, Outro, `Ignorado`) |>
  
  # Renomeando a coluna de ano epidemiológico ("ano_epi") para "Ano"
  rename(Ano = ano_epi)

Agora copie o código apresentado acima e inclua-o em seu arquivo .Rmd no seu computador. Para que o relatório fique intuitivo, você deverá incluir este chunk após o título ### 2. Número de casos por classificação final. Ele ficará semelhante ao apresentado na Figura 58.


Figura 58: Script com inclusão da tabela de casos do Estado de Rosas (fictício).


Note, na Figura 58, a inclusão do argumento echo = FALSE no início do chunk.

Pronto, já temos nossa tabela. Agora precisaremos inserir um comando para que ela fique visível em nosso relatório. Para isso, iremos utilizar algumas funções do pacote kableExtra e kable() que permitirão que criemos a tabela e o pacote kable_styling() para adicionar alguns detalhes à visualização da tabela criada. Observe o trecho de código a seguir e inclua-o logo abaixo dos demais códigos do chunk com os quais criamos a tabela.

kable(tabela_dengue) |>
  kable_styling()

Agora, vamos renderizar o arquivo utilizando o botão knit do menu superior do R para obter um resultado semelhante ao observado na Figura 59.


Figura 59: Renderização do script com tabela com o número de casos notificados de dengue.


Caso o documento final produzido seja um arquivo .pdf é recomendado inserir o argumento latex_options = "HOLD_position" na função kable_styling, conforme exemplo abaixo:

kable(tabela_dengue) |>
  kable_styling(latex_options = "HOLD_position")

Isto irá garantir que a tabela gerada seja posicionada de forma correta no arquivo final.


Atenção

Caso tenha encontrado dificuldade de chegar a um arquivo com os scripts que utilizamos, não se preocupe e continue no curso!

Deixamos pronto para você um arquivo de estudo com todos os elementos que aplicamos nesta subseção: o exemplo8.Rmd. Você poderá encontrá-lo acessando o menu lateral “Arquivos” do Ambiente Virtual do curso e fazer o download.


Atualmente, existem diversos pacotes que permitem personalizar o formato de tabelas geradas pelo R para documentos. Um guia detalhado de cada um desses pacotes tornaria este curso muito extenso. No entanto, é muito interessante conhecer essas possibilidades adicionais. Assim, a seguir indicamos alguns dos principais pacotes utilizados e a descrição dos seus principais usos com um guia de como aprender a utilizá-los:



A partir de agora você pode incluir os gráficos, tabelas e textos que desejar para construir o seu modelo de relatório. Vá recheando-o com informações conforme suas necessidades utilizando os códigos de análise do R no Rmarkdown.