R Markdown combina: - Texto explicativo - Código en R - Resultados (tablas y gráficos)
Objetivo taller: generar un reporte reproducible con Knit.
.RmdUn .Rmd tiene: 1) YAML (arriba) 2) Texto en Markdown 3)
Chunks con código R
✅ Ejercicio 1 (5 min):
Cambia el title (arriba) por un título con tu nombre y
vuelve a hacer Knit.
✅ Ejercicio 2 (5–10 min):
Escribe una mini-lista con 3 objetivos personales del curso.
✅ Ejercicio 3 (3 min):
Escribe una frase y resalta una palabra en negrita y
otra en cursiva.
Frase: El objetivo del curso es poder aprender R Markdown y aplicarla de forma práctica.
R incluye un dataset llamado mtcars.
set.seed(123)
mtcars <- data.frame(
mpg = round(runif(32, 10, 35), 1),
cyl = sample(c(4, 6, 8), 32, replace = TRUE),
disp = round(runif(32, 70, 500), 1),
hp = round(runif(32, 50, 350)),
drat = round(runif(32, 2.5, 4.5), 2),
wt = round(runif(32, 1.5, 5.5), 2),
qsec = round(runif(32, 14, 23), 2),
vs = sample(0:1, 32, replace = TRUE),
am = sample(0:1, 32, replace = TRUE),
gear = sample(3:5, 32, replace = TRUE),
carb = sample(1:8, 32, replace = TRUE)
)
mtcars
## mpg cyl disp hp drat wt qsec vs am gear carb
## 1 17.2 8 340.6 336 3.82 2.38 19.16 1 0 4 1
## 2 29.7 6 375.4 195 4.14 3.15 16.15 1 1 4 5
## 3 20.2 4 70.3 317 4.07 2.56 22.66 0 0 4 5
## 4 32.1 8 274.4 324 4.46 4.02 19.41 1 1 5 1
## 5 33.5 8 164.7 233 3.38 2.24 18.64 1 0 3 8
## 6 11.1 4 233.3 173 3.12 4.95 17.62 1 0 4 7
## 7 23.2 8 333.5 94 3.32 4.49 21.92 1 0 4 1
## 8 32.3 6 221.3 331 2.52 4.17 17.28 1 0 3 5
## 9 23.8 4 117.8 140 2.87 3.97 16.59 0 0 4 5
## 10 21.4 8 174.8 68 4.19 2.99 15.54 0 0 3 2
## 11 33.9 4 357.3 334 2.96 3.62 15.55 1 1 3 2
## 12 21.3 4 249.6 266 2.98 5.00 18.34 0 0 4 7
## 13 26.9 6 408.9 93 2.65 3.83 16.28 1 1 5 6
## 14 24.3 8 114.2 215 2.99 4.86 15.95 0 0 3 7
## 15 12.6 8 257.0 336 3.96 2.75 20.07 0 0 5 5
## 16 32.5 4 493.5 226 4.19 4.33 14.43 0 0 3 1
## 17 16.2 8 454.0 171 3.50 2.56 20.31 1 0 4 8
## 18 11.1 4 451.2 244 3.28 3.88 17.17 1 1 3 1
## 19 18.2 8 145.3 146 2.99 3.43 17.68 1 1 4 5
## 20 33.9 6 126.2 142 2.72 2.56 21.39 0 0 4 5
## 21 32.2 4 350.8 116 3.28 3.76 22.27 1 0 4 4
## 22 27.3 6 217.7 161 3.64 5.15 16.54 1 0 5 7
## 23 26.0 4 352.4 345 2.93 5.11 22.65 0 1 3 5
## 24 34.9 4 207.8 96 3.39 2.60 20.56 0 1 3 8
## 25 26.4 8 150.7 77 2.94 2.79 20.18 0 1 3 5
## 26 27.7 4 406.4 93 3.50 5.44 14.48 0 0 3 7
## 27 23.6 6 110.2 257 3.21 3.98 17.56 0 1 5 7
## 28 24.9 4 270.7 236 3.80 5.25 18.30 1 0 3 4
## 29 17.2 4 289.9 317 3.25 3.37 19.04 0 0 4 2
## 30 13.7 8 328.0 252 3.21 3.13 20.28 1 0 3 5
## 31 34.1 4 213.1 271 3.57 4.14 22.24 1 0 4 1
## 32 32.6 6 280.1 206 3.98 2.11 19.57 1 0 4 1
head(mtcars)
## mpg cyl disp hp drat wt qsec vs am gear carb
## 1 17.2 8 340.6 336 3.82 2.38 19.16 1 0 4 1
## 2 29.7 6 375.4 195 4.14 3.15 16.15 1 1 4 5
## 3 20.2 4 70.3 317 4.07 2.56 22.66 0 0 4 5
## 4 32.1 8 274.4 324 4.46 4.02 19.41 1 1 5 1
## 5 33.5 8 164.7 233 3.38 2.24 18.64 1 0 3 8
## 6 11.1 4 233.3 173 3.12 4.95 17.62 1 0 4 7
✅ Ejercicio 4: Ejecuta este chunk y luego Knit.
summary(mtcars$mpg)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 11.10 19.70 25.45 24.88 32.23 34.90
✅ Ejercicio 5: Knit y revisa el resultado.
✅ Ejercicio 6 (exploración): 1) En el chunk de
arriba, agrega echo=FALSE dentro de las llaves. 2) Knit y
observa qué cambia.
Ejemplo:
```
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 11.10 19.70 25.45 24.88 32.23 34.90
```
✅ Ejercicio 7 (5 min):
Completa la frase usando inline R para mostrar la media de
mpg con 2 decimales:
✅ Ejercicio 8 (10 min):
Muestra una tabla con las primeras 8 filas usando
knitr::kable().
knitr::kable(head(mtcars, 8))
| mpg | cyl | disp | hp | drat | wt | qsec | vs | am | gear | carb |
|---|---|---|---|---|---|---|---|---|---|---|
| 17.2 | 8 | 340.6 | 336 | 3.82 | 2.38 | 19.16 | 1 | 0 | 4 | 1 |
| 29.7 | 6 | 375.4 | 195 | 4.14 | 3.15 | 16.15 | 1 | 1 | 4 | 5 |
| 20.2 | 4 | 70.3 | 317 | 4.07 | 2.56 | 22.66 | 0 | 0 | 4 | 5 |
| 32.1 | 8 | 274.4 | 324 | 4.46 | 4.02 | 19.41 | 1 | 1 | 5 | 1 |
| 33.5 | 8 | 164.7 | 233 | 3.38 | 2.24 | 18.64 | 1 | 0 | 3 | 8 |
| 11.1 | 4 | 233.3 | 173 | 3.12 | 4.95 | 17.62 | 1 | 0 | 4 | 7 |
| 23.2 | 8 | 333.5 | 94 | 3.32 | 4.49 | 21.92 | 1 | 0 | 4 | 1 |
| 32.3 | 6 | 221.3 | 331 | 2.52 | 4.17 | 17.28 | 1 | 0 | 3 | 5 |
✅ Ejercicio 9 (15 min):
Crea un gráfico de dispersión entre wt (peso) y
mpg.
library(ggplot2)
ggplot(mtcars, aes(x = wt, y = mpg)) +
geom_point() +
labs(
title = "Relación entre peso y consumo",
x = "Peso (wt)",
y = "Millas por galón (mpg)"
)
Tu reporte final debe tener: - 2 secciones (con ##) - 2
chunks: - summary de mpg - un gráfico - 1 inline R - 1 tabla con
kable
summary(mtcars$mpg)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 11.10 19.70 25.45 24.88 32.23 34.90
knitr::kable(head(mtcars, 10))
| mpg | cyl | disp | hp | drat | wt | qsec | vs | am | gear | carb |
|---|---|---|---|---|---|---|---|---|---|---|
| 17.2 | 8 | 340.6 | 336 | 3.82 | 2.38 | 19.16 | 1 | 0 | 4 | 1 |
| 29.7 | 6 | 375.4 | 195 | 4.14 | 3.15 | 16.15 | 1 | 1 | 4 | 5 |
| 20.2 | 4 | 70.3 | 317 | 4.07 | 2.56 | 22.66 | 0 | 0 | 4 | 5 |
| 32.1 | 8 | 274.4 | 324 | 4.46 | 4.02 | 19.41 | 1 | 1 | 5 | 1 |
| 33.5 | 8 | 164.7 | 233 | 3.38 | 2.24 | 18.64 | 1 | 0 | 3 | 8 |
| 11.1 | 4 | 233.3 | 173 | 3.12 | 4.95 | 17.62 | 1 | 0 | 4 | 7 |
| 23.2 | 8 | 333.5 | 94 | 3.32 | 4.49 | 21.92 | 1 | 0 | 4 | 1 |
| 32.3 | 6 | 221.3 | 331 | 2.52 | 4.17 | 17.28 | 1 | 0 | 3 | 5 |
| 23.8 | 4 | 117.8 | 140 | 2.87 | 3.97 | 16.59 | 0 | 0 | 4 | 5 |
| 21.4 | 8 | 174.8 | 68 | 4.19 | 2.99 | 15.54 | 0 | 0 | 3 | 2 |
library(ggplot2)
ggplot(mtcars, aes(x = wt, y = mpg)) +
geom_point(color = "steelblue", size = 2) +
labs(
title = "Relación entre peso y consumo de combustible",
x = "Peso del vehículo (wt)",
y = "Millas por galón (mpg)"
) +
theme_minimal()
## R version 4.5.2 (2025-10-31)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 20.04.6 LTS
##
## Matrix products: default
## BLAS: /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
## LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/liblapack.so.3; LAPACK version 3.9.0
##
## locale:
## [1] LC_CTYPE=C.UTF-8 LC_NUMERIC=C LC_TIME=C.UTF-8
## [4] LC_COLLATE=C.UTF-8 LC_MONETARY=C.UTF-8 LC_MESSAGES=C.UTF-8
## [7] LC_PAPER=C.UTF-8 LC_NAME=C LC_ADDRESS=C
## [10] LC_TELEPHONE=C LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C
##
## time zone: UTC
## tzcode source: system (glibc)
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] ggplot2_4.0.1
##
## loaded via a namespace (and not attached):
## [1] vctrs_0.6.5 cli_3.6.5 knitr_1.50 rlang_1.1.6
## [5] xfun_0.55 S7_0.2.1 jsonlite_2.0.0 glue_1.8.0
## [9] labeling_0.4.3 htmltools_0.5.9 sass_0.4.10 scales_1.4.0
## [13] rmarkdown_2.30 grid_4.5.2 evaluate_1.0.5 jquerylib_0.1.4
## [17] fastmap_1.2.0 yaml_2.3.12 lifecycle_1.0.4 compiler_4.5.2
## [21] RColorBrewer_1.1-3 rstudioapi_0.17.1 farver_2.1.2 digest_0.6.39
## [25] R6_2.6.1 bslib_0.9.0 tools_4.5.2 withr_3.0.2
## [29] gtable_0.3.6 cachem_1.1.0