Curso de Verão IME-USP 2024
O que vamos aprender:
O que é o RMarkdown
Como criar um documento reprodutível com RMarkdown usando R
Fonte: Conceito do ciclo de ciência de dados apresentado por Hadley Wickham no livro R for Data Science, ilustração por Allison Horst.
Criado e mantido pela RStudio
Princípio: arquivos onde escrevemos textos e marcamos com markdown, mas também podemos adicionar códigos que são executados.
Extensão .Rmd
Possibilita a utilização de códigos R, Python, Markdown, HTML, CSS, SQL, e outros em um único arquivo.
É um pacote em R, portanto depende do R.
A reprodutibilidade é algo importante para o R Markdown.
A comunidade de R, e a equipe da RStudio, desenvolveram outros pacotes que integram bem com R Markdown para gerar diversos produtos de análise de dados diferentes, com arquivos .Rmd.
Criando um arquivo:
File > New File > R MarkdownEstrutura do arquivo:
Transformar o .Rmd no arquivo final
Ctrl + Shift + KDentro do projeto do RStudio criado, crie uma pasta chamada relatorio.
Crie um novo arquivo RMarkdown que gera um HTML, e salve ele na pasta relatorio. Dê o nome de primeiro_relatorio.Rmd.
O arquivo já vem com alguns conteúdos para servir de exemplo. Observe a estrutura deste arquivo! Tente imaginar o que será gerado.
Aperte o botão knit para gerar o resultado final. Veja o resultado: é o que você imaginou?
Faça pequenas alterações e aperte o botão knit novamente, para ver como ficou. Sugestões:
O RMarkdown possibilita a utilização da linguagem de marcação simples Markdown. Essa linguagem de marcação foi elaborada para ser fácil de ler e fácil de escrever.
Confira as cheatsheets: rmarkdown Cheatsheet 2.0 e rmarkdown Cheatsheet.
O RStudio Visual Editor facilita o uso do Markdown no RStudio.
No arquivo criado, experimente marcar os textos com Markdown.
Experimente o Visual Mode Editor do RStudio.
Adicione um link no seu relatório para a página dos cursos de extensão da USP: https://cursosextensao.usp.br/
Os chunks são campos onde podemos inserir código de R (ou Python, SQL, Bash…) em um arquivo RMarkdown.
Os chunks podem ter rótulos/nomes, para identificar o conteúdo gerado.
Existe um atalho do teclado para criar chunks no RStudio: Ctrl + ALt + I.
Também é possível criar um chunk clicando no seguinte botão do RStudio:
.RmdQuando usamos projetos do RStudio, o diretório de trabalho será a pasta principal do projeto.
Quando estamos trabalhando com arquivos .Rmd, por padrão o diretório de trabalho DO ARQUIVO será a pasta onde o arquivo está localizado.
Isso gera confusão! Atenção pois isso pode causar erros. Uma dica para escrever os caminhos de forma correta é utilizar a funcionalidade do RStudio: escreva aspas, coloque o cursor entre as pastas e aperte TAB.
Exemplo prático: comparar o uso de getwd() dentro e fora de um arquivo .Rmd.
Para acessar arquivos em pastas que estão em um “nível” anterior ao diretório de trabalho, utilize "../".
primeiro-relatorio.Rmd, crie um chunk e faça a importação da base de dados de pinguins.Lembre-se de se atentar aos caminhos!
Aperte knit e observe o resultado. O código e o resultado deverá aparecer no relatório. Configure as opções de chunk para que apareça corretamente.
Exemplo:
A base mtcars possui 32 carros. As colunas presentes na base são mpg, cyl, disp, hp, drat, wt, qsec, vs, am, gear, e carb.
Código Markdown:
1 ) O trecho a seguir apresenta um texto com resultados feitos com inline code. Adicione o seguinte código no seu relatório (o arquivo primeiro_relatorio.Rmd), substituindo os trechos coloridos por inline code:
A base de dados pinguins apresenta dados referente à 344 pinguins, das seguintes espécies: Pinguim-de-adélia, Pinguim-gentoo, e Pinguim-de-barbicha. Os dados foram coletados entre os anos 2007 e 2009, nas seguintes ilhas: Torgersen, Biscoe, e Dream. O peso médio dos pinguins amostrados foi de 42 kg. Os dados foram obtidos através do pacote Palmer Penguins.
knitr::kable(), DT::datatable() , reactable::reactable(), entre outras.kable():Ela deverá ficar assim:
| Espécie | Quantidade |
|---|---|
| Pinguim-de-adélia | 152 |
| Pinguim-gentoo | 124 |
| Pinguim-de-barbicha | 68 |
| Total | 344 |
Adicione um gráfico no seu relatório, utilizando a base pinguins.
Caso não tenha experiência com ggplot, um gráfico simples pode ser gerado com esse código:
O pacote rmarkdown possibilita adicionar textos e códigos em um único arquivo.
Podemos utilizar códigos em R, Python, Markdown, HTML, CSS, SQL, e outros no RMarkdown.
O uso do RMarkdown depende do uso do R.
O arquivo RMarkdown é estruturado em: YAML (metadados), textos marcados e campos de código (chamados de chunks).
Markdown é uma linguagem de marcação que possibilita marcar textos. Essa linguagem é utilizada nos arquivos RMarkdown e em muitos outros lugares.

Slides por Beatriz Milz (@BeaMilz), feito com Quarto. Código disponível no GitHub.