Assita o vídeo! É impactante, baseado em fatos reais!
TL;DR
RMarkdown é uma linguagem para edição de textos que segue a sintaxe da linguagem Markdown. Sínteses e informações sobre essa linguagem RMarkdown podem ser encontradas nas seguintes cheatsheet que podem ser obtidas por meio do link
O que é Markdown?
Segundo o criador da linguagem:
Markdown is a text-to-HTML conversion tool for web writers. Markdown allows you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML).
John Gruber
Dicas de sintaxe da linguagem Markdown podem ser encontradas em:
RMarkdown
Vou colocar aqui algumas informações-chave sobre a construção geral de informações a partir do uso do RMarkdown. Entretanto, informações adicionais podem ser obtidas de maneira detalhada no site:
Formatação de texto
- Textos em itálico são produzidos com um par de asteriscos
*Itálico*
ou de underscores_Itálico_
- Textos em negrito são produzidos com dois pares de asteriscos:
**Negrito**
- Um par de acentos til produz texto subscrito:
CO~2~
vira CO2 - Um par de acentos circunflexos produz texto sobrescrito:
x^2^
vira x2 - Hyperlinks são criados com a sintaxe
[texto](link): Clique [aqui](https://www.google.com/)
vira Clique aqui - Imagens são inseridas com a sintaxe
![texto opcional](pasta/imagem.jpg)
ou![texto opcional](link para imagem)
Seções e subseções
Para demarcar seções e subseções, utilize os hashtags
.
Listas e ordenação
Basta enumerar:
- Item 1
- Item 2
Incluindo tabelas
Existem duas boas opções para produzir tabelas elegantes em documentos R Markdown:
A função knitr::kable()
iris %>%
head() %>%
knitr::kable()
Sepal.Length | Sepal.Width | Petal.Length | Petal.Width | Species |
---|---|---|---|---|
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |
4.7 | 3.2 | 1.3 | 0.2 | setosa |
4.6 | 3.1 | 1.5 | 0.2 | setosa |
5.0 | 3.6 | 1.4 | 0.2 | setosa |
5.4 | 3.9 | 1.7 | 0.4 | setosa |
A função knitr::kable()
acompanhada do pacote kableExtra
iris %>%
head() %>%
kableExtra::kable()
Sepal.Length | Sepal.Width | Petal.Length | Petal.Width | Species |
---|---|---|---|---|
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |
4.7 | 3.2 | 1.3 | 0.2 | setosa |
4.6 | 3.1 | 1.5 | 0.2 | setosa |
5.0 | 3.6 | 1.4 | 0.2 | setosa |
5.4 | 3.9 | 1.7 | 0.4 | setosa |
E tabelas interativas por meio do pacote DT
:
iris %>%
head() %>%
DT::datatable()
Informações sobre a configuração dos packages considerados porm ser encontrados nos links: kableExtra
, `
Incluindo figuras
Eu prefiro incluir figuras por meio de chunk
, pois a parametrização do chunk
permite configurar a figura:
knitr::include_graphics(img1_path)
chunks
chunks
são blocos de código que podem ser incluídos e rodados em um documento .Rmd
. Os chunks precisam de uma formatação específicica e podem ser escritos em diferentes linguagens. A forma mais rápida de incluir um chunk para edição em R
é o atalho Ctrl + Alt + i
.
O chunk
deve ser iniciado por ```{r }
e alguns parâmetros definem opções para os chunks
.
eval
: tipo logical. Executar (TRUE) ou não (FALSE) o código dochunk
.echo
: tipo logical. Incluir o código dochunk
ou não no documento compilado.warning
,message
eerror
: tipo logical. Casoerror = TRUE
, o documento será compilado mesmo que o chunk retorne um erro.include
: tipo logical. Controla se ochunk
e o output estarão presentes no documento final.cache
: tipo logical. Controla se ochunk
poderá usar cache para criar uma pasta com arquivos cacheados. Útil para chunks de códigos que levam muito tempo para rodar.
x <- rnorm(30)
x
## [1] -0.53596970 1.76109606 0.46239910 0.79723166 0.23295165 -0.77232180
## [7] -0.25601127 -0.65275989 0.89833090 -1.05776614 -1.94411608 -0.65892824
## [13] -0.57028574 0.06416441 -0.60312920 -0.50877835 -0.61263679 -0.34683176
## [19] 0.32026704 -0.54176886 1.84373293 -0.22671222 -0.17707762 -0.24548684
## [25] -1.54765995 -0.66702123 1.43551421 -0.60435759 -0.33147198 0.89722113
Para definir uma opção da mesma maneira para todos os chunks
do documento, é possível criar um chunk
com o código knitr::opts_chunk$set()
, como no exemplo abaixo:
As opções gerais de chunks
podem ser encontradas no link.
Visualização
plot(x)
Também podemos fazer um histograma dessa variável simulada
hist(x)
Metadados - Cabeçalho
YAML
(Yet Another Markup Language)
No YAML
, os dados são escritos em forma de lista aninhada. Os metadados em YAML
são colocados sempre no início de um documento, e são delimitados por ---
.
Formatos de output
- Compilar um documento em RMarkdown
knitr
Na galeria do RStudio diferentes estruturas de informação produzida por meio de RMarkdown
podem ser encontradas!
beamer_presentation
html_document
ioslides_presentation
pdf_document
slidy_document
powerpoint_presentation
word_document
output:
html_document:
toc: true
number_sections: yes
pdf_document:
keep_tex: true
Divulgando
No RStudio, crie um novo documento R Markdown
escolhendo Arquivo | Novo | R Markdown
.
Clique no botão Knit HTML
na barra de ferramentas do doc para visualizar seu documento.
Na janela de pré-visualização, clique no botão Publicar
.
É um processo em duas etapas. Na primeira etapa, você precisa registrar uma conta RPubs
ou fazer o login, caso já tenha uma. Você escreve o título de seu documento e dá uma breve descrição (para que outros possam encontrar seu trabalho a partir da busca).
Uma vez terminado e clicando no botão Continue
na parte inferior, você irá diretamente para o artigo publicado.
Você pode optar por atualizar seu conteúdo.
Rode o seu primeiro documento em RMarkdown!
Salve o arquivo em um diretório que você consiga acessar depois. Sugiro criar um diretório para essa finalidade.
Abra o arquivo no RStudio:
File | Open File
e navegue até o arquivo01-covid.Rmd
selecionando-o.Você identificará o arquivo por meio do
YAML
comtitle: "Mortes por COVID-19"
Verifique se houve alguma mensagem abaixo da barra de ferramentas da janela de edição do
RMarkdown
para que sejam instaladospackages
necessários para rodar esse.Rmd
Clique no botão de
knitr
.
Aprecie o seu primeiro documento!