C.3 Inserir código R no documento.

Um chunk tem a seguinte estrutura:

C.3.1 Opções do Chunk

Cada chunk possui parâmetros que permitem definir opções de execução para aquele chunck, as principais são as seguintes:

  • chunk1 identificador (ID) do chunk que permite encontrar ele mais fácil se ocorrer algum erro (opcional) durante a geração do documento.
  • eval = TRUE opção para executar o chunk quando compilar o documento (default TRUE).
  • cache=TRUE opção que permite ao chunk guardar os dados uma vez calculados (default FALSE).
  • message = TRUE mostra as mensagens de erro (default TRUE).
  • echo = TRUE se FALSE permite eliminar as saídas do chunk (default FALSE).

O resto das opções são mostradas ao pressionar a tecla tab com o mouse posicionado dentro dos colchetes da linha do chunk. Para uma lista completa os parâmetros do chunck consulte http://yihui.name/knitr/options/.

#> ```{r chunk2, eval=TRUE, message = TRUE, echo = TRUE}
#> letters
#> ## letras em maiúsculo
#> LETRAS <- toupper(letters)
#> LETRAS
#> x <- LETRAS[LETRAS %in% c('U', 'F', 'S', 'M')]
#> x
#> ```

O chunck2 será impresso da seguinte forma:

C.3.2 Saídas dos chunks

Os resultados dos chuncks podem ser mostrados na forma de figuras, tabelas e textos.

#> ```{r, warning=FALSE, message=FALSE,comment=''}
#>     # carregando a pacote 'ggplot2' para gráficos elegante
#>     library(ggplot2)
#>     # pacote que contém conjunto de dados de temperatura
#>     library(gcookbook)
#>     # Mostrando as primeiras linhas da tabela 'climate' que pertenece ao pacote
#>     head(climate)
#>     # Usando a função qplot() para plotar a série de temperatura global
#>     qplot(x = Year, y = Anomaly1y, data = climate) + geom_smooth()
#>     # Usando apenas a função plot()
#>     plot(x = climate$Year, y = climate$Anomaly1)
#>     # regressão linear
#>     reg <- lm(Anomaly1y ~ Year, data = climate)
#>     # extraindo o coeficiente angular (°C/ano) da reta
#>     # convertendo para °C/100 anos
#>     tendencia <- coef(reg)[2] * 100
#> ```

O resultado do chunck acima será:

#>     Source Year Anomaly1y Anomaly5y Anomaly10y Unc10y
#> 1 Berkeley 1800        NA        NA     -0.435  0.505
#> 2 Berkeley 1801        NA        NA     -0.453  0.493
#> 3 Berkeley 1802        NA        NA     -0.460  0.486
#> 4 Berkeley 1803        NA        NA     -0.493  0.489
#> 5 Berkeley 1804        NA        NA     -0.536  0.483
#> 6 Berkeley 1805        NA        NA     -0.541  0.475
#> `geom_smooth()` using method = 'loess' and formula 'y ~ x'
#> Warning: Removed 207 rows containing non-finite values (stat_smooth).
#> Warning: Removed 207 rows containing missing values (geom_point).

#>      Year 
#> 0.5929518

Podemos fazer outro chunk para mostrar as tabelas.

#> ```{r}
#>     # pacote com a função kable para saída de tabelas
#>     library(knitr)
#>     # Aplicando a função 'summary()' ao dataframe airquality.
#>     s <- summary(airquality)
#>     # Convertendo o formato da saída das tabelas
#>     kable(s, caption = 'Tabela 1: Resumo estatístico dos de qualidade do ar')
#> ```
Tabela C.1: Tabela 1: Resumo estatístico dos dados de ‘qualidade do ar’ de NY
Ozone Solar.R Wind Temp Month Day
Min. : 1.00 Min. : 7.0 Min. : 1.700 Min. :56.00 Min. :5.000 Min. : 1.0
1st Qu.: 18.00 1st Qu.:115.8 1st Qu.: 7.400 1st Qu.:72.00 1st Qu.:6.000 1st Qu.: 8.0
Median : 31.50 Median :205.0 Median : 9.700 Median :79.00 Median :7.000 Median :16.0
Mean : 42.13 Mean :185.9 Mean : 9.958 Mean :77.88 Mean :6.993 Mean :15.8
3rd Qu.: 63.25 3rd Qu.:258.8 3rd Qu.:11.500 3rd Qu.:85.00 3rd Qu.:8.000 3rd Qu.:23.0
Max. :168.00 Max. :334.0 Max. :20.700 Max. :97.00 Max. :9.000 Max. :31.0
NA’s :37 NA’s :7 NA NA NA NA

C.3.3 Códigos R dentro de linhas

Podemos usar o R em expressões dentro de uma linha de texto, para mostrar o valor de uma variável ou efetuar um cálculo. Por exemplo, para obtermos o valor resultante de 2 + 2 escrevemos ` r 2 + 2 ` e o R colocará o resultado naquela posição do texto.

Por exemplo, a sentença:

  • A tendência da temperatura do ar média global é de ` r round(tendencia, 2) ` °C/100 anos.

ficará

  • A tendência da temperatura do ar média global é de 0.59 °C/100 anos.

Assim como,

  • A média de uma sequência de números inteiros 1 até 10 é ` r mean(1:10) `.

ficará:

  • A média de uma sequência de números inteiros de 1 até 10 é 5.5.