knitr::opts_chunk$set(echo=TRUE)
library(skimr) # Resumen de datos
library(janitor) # Limpieza y tabulaci贸n
library(easystats) # Reportes autom谩ticos
R se puede usar en diferentes entornos de desarrollo, cada uno con caracter铆sticas propias:
R base tiene varias funciones por defecto:list() log() cat() rm()
Se instalan desde R con:
install.packages() para paquetes de CRAN 馃摝remotes o pak para todos los dem谩s repositoriosinstall.packages("tidyverse")
install.packages("ggplot2")
?funcion o help(funcion) para ayuda sobre funciones.??palabra_clave para buscar en la documentaci贸n.vignette(package="package-name")browseVignettes("grid")?<- para ayuda sobre operadores.proyecto_macro_2025.csvPara trabajar en R podemos seguir diferentes rutas:
En lo personal a m铆 me gusta trabajar con proyectos.
Pero podemos usar el paquete 馃摝fs
getwd()
setwd()
dir_create("proyecto")
dir_create("datos")
dir_create("scripts")
dir_create("resultados")
datos, scripts y resultados
archivo <- read.csv("../datos/penguins_2025.csv")
Variables
En R, las variables pueden almacenar diferentes tipos de datos:
x <- 5
nombre <- "Juliana"
x <- 3.14 # Num茅ricas: N煤meros reales (decimales)
y <- 10 # Enteras: N煤meros enteros
nombre <- "Juliana" # Caracteres: Texto (strings)
es_mayor <- TRUE # L贸gicas: Verdadero o falso
nivel <- factor(c("bajo", "medio", "alto")) # Factores: Categor铆as o niveles
fecha <- as.Date("2025-09-05") # Fechas: Valores de fecha y hora
Operaciones b谩sicas
suma <- 2 + 3
producto <- 4 * 5
Vectores
edades <- c(23, 25, 30)
letras <- c("a", "b", "c")
Data Frames
datos <- data.frame(nombre = c("Ana", "Luis"), edad = c(28, 32))
head(datos)
Matrices
matriz <- matrix(1:6, nrow = 2, ncol = 3)
matriz
Arrays
array_3d <- array(1:24, dim = c(2, 3, 4))
array_3d
Funciones
longitud <- length(edades)
longitud
resumen <- summary(datos)
resumen
Listas
mi_lista <- list(numeros = c(1, 2, 3), letras = c("a", "b", "c"))
mi_lista$numeros
Podemos realizarlo a trav茅s de diferentes paquetes como readr o readxl o con las funciones por defecto:
mi_tabla <- read.csv(file = "../datos/penguins_2025.csv",
header = TRUE)
Importar los datos en R
Explorar, para:
Saber si fueron importados correctamente
Resumir caracter铆sticas de los datos
Limpiar los datos
mi_tabla <- read.csv(file = "../datos/penguins_2025.csv",
header = TRUE)
skimrEs un paquete con una 煤nica funci贸n skim().
La funci贸n skim() es 煤til para resumir conjuntos de datos, especialmente grandes conjuntos sin necesidad de explorarlos con detalle (e.g., toda la tabla, l铆nea por l铆nea).
Es un combo de algunas funciones del R base, como str(), class(), summary().
summary(mi_tabla)
s <- skim(mi_tabla)
s
yank(s, "numeric")
yank(s, "factor")
skim() y conteste:
report(mi_tabla)
model <- lm(bill_len ~ bill_dep, data = mi_tabla)
report(model)
table(mi_tabla$species) # funci贸n default
tabyl(mi_tabla$species) # funci贸n del paquete janitor
tabyl(mi_tabla$year)
table(mi_tabla$species, mi_tabla$island) # funci贸n default
tabyl(mi_tabla, species, island) %>%
adorn_percentages() %>%
adorn_pct_formatting()
adorn_percentages(), 驴qu茅 porcentajes se est谩n calculando?adorn_percentages(). 驴Cu谩l es la diferencia de usar cada una de las opciones?adorn_percentages() y adorn_pct_formatting()?