Relatórios reprodutíveis com R

Curso de Verão IME-USP 2022

Ministrante: Beatriz Milz

Elementos úteis para relatórios acadêmicos

Adicionar equações

  • Podemos adicionar equações em LaTeX. Dica: Equações em LaTeX no Mettzer, ou pesquise no google por “Equações em LaTeX”.

  • Equação centralizada: Envolver a equação por dois $.

\[{\text{Média}=\frac {a_{1}+a_{2}+\cdots +a_{n}}{n}}\]

Código Markdown:

$${\text{Média}=\frac {a_{1}+a_{2}+\cdots +a_{n}}{n}}$$

Adicionar equações

  • Equação junto ao texto: Envolver a equação por um $.

Ou também na linha \({\text{Média}=\frac {a_{1}+a_{2}+\cdots +a_{n}}{n}}\), junto ao texto!

Código Markdown:

Ou também na linha ${\text{Média}=\frac {a_{1}+a_{2}+\cdots +a_{n}}{n}}$, junto ao texto!

Adicionar referências

  • Podemos adicionar referências no texto usando um arquivo .bib.

  • Podemos gerar um arquivo .bib usando um gerenciador de referências. Eu utilizo o Zotero, a extensão Better Bibtex for Zotero e a extensão do Zotero para o navegador.

  • No arquivo .bib, cada referência deverá ter um rótulo, que usaremos para citar dentro do arquivo .qmd, precedido de @.

  • Devemos indicar os arquivos .bib no YAML do relatório. Exemplo em um caso com 2 arquivos diferentes:

bibliography: 
  - references.bib
  - packages.bib

Citar o R - Função citation()

> citation() 

To cite R in publications use:

  R Core Team (2021). R: A language and environment for
  statistical computing. R Foundation for Statistical
  Computing, Vienna, Austria. URL https://www.R-project.org/.

A BibTeX entry for LaTeX users is

  @Manual{,
    title = {R: A Language and Environment for Statistical Computing},
    author = {{R Core Team}},
    organization = {R Foundation for Statistical Computing},
    address = {Vienna, Austria},
    year = {2021},
    url = {https://www.R-project.org/},
  }

We have invested a lot of time and effort in creating R,
please cite it when using it for data analysis. See also
‘citation("pkgname")’ for citing R packages.

Citar pacotes

  • Podemos gerar um .bib com as referências de pacotes utilizados usando a função knitr::write_bib():
pacotes <- c("tidyverse")
knitr::write_bib(pacotes, # pacotes para gerar a referencia
                 # local para salvar o arquivo
                 'packages.bib')

@Manual{R-tidyverse,
  title = {tidyverse: Easily Install and Load the Tidyverse},
  author = {Hadley Wickham},
  year = {2021},
  note = {R package version 1.3.1},
  url = {https://CRAN.R-project.org/package=tidyverse},
}

@Article{tidyverse2019,
  title = {Welcome to the {tidyverse}},
  author = {Hadley Wickham and Mara Averick and Jennifer Bryan and Winston Chang and Lucy D'Agostino McGowan and Romain François and Garrett Grolemund and Alex Hayes and Lionel Henry and Jim Hester and Max Kuhn and Thomas Lin Pedersen and Evan Miller and Stephan Milton Bache and Kirill Müller and Jeroen Ooms and David Robinson and Dana Paige Seidel and Vitalie Spinu and Kohske Takahashi and Davis Vaughan and Claus Wilke and Kara Woo and Hiroaki Yutani},
  year = {2019},
  journal = {Journal of Open Source Software},
  volume = {4},
  number = {43},
  pages = {1686},
  doi = {10.21105/joss.01686},
}

Como citar no .qmd

  • Formas de usar os rótulos gerados no arquivo .qmd:
forma_de_citar resultado
@tidyverse2019 Wickham et al. (2019)
[@tidyverse2019; @R-tidyverse] (Wickham et al. 2019; Wickham 2021)
Em -@tidyverse2019, Hadley e colaboradores… Em 2019, Hadley e colaboradores…
Segundo Hadley Wickham e colaboradores [-@tidyverse2019] Segundo Hadley Wickham e colaboradores (2019)

Formatação das referências

  • O conteúdo do arquivo .bib é formatado a partir de um arquivo .csl (Citation Style Language).

  • Devemos informar caminho até o arquivo CSL no YAML, por exemplo:

csl: template/abnt.csl

Referências cruzadas

  • Figuras, tabelas, equações, seções:
    • Usamos o rótulo do chunk (ou nome) onde a tabela ou imagem foi criada para fazer a referência cruzada.
      • Ex: @fig-rotulo-da-imagem , @tab-rotulo-da-tabela, @eq-rotulo-da-equacao, @sec-rotulo-da-secao.

Referências cruzadas de capítulos

  • Para fazer referência cruzada em capítulos/seções, devemos adicionar um rótulo para o capítulo, que deverá ser escrito logo após a cabeçalho (que delimitamos com #, ##, etc).

  • No RMarkdown, funciona com outputs que são derivados do pacote {bookdown}.

Ex: bookdown::html_document2, bookdown::word_document2