Tutorial: Básicos de R — instalar paquetes, cargar librerías y nomenclatura

Objetivo:
Aprender los fundamentos para trabajar con R: instalar paquetes, cargar librerías y comprender la nomenclatura básica (objetos, funciones, argumentos y buenas prácticas de nombres).


🧰 1) Preparación del entorno (R y RStudio)

Descarga R desde CRAN (busca “CRAN R download” para tu SO) y luego instala RStudio/Posit Desktop.


📦 2) Instalar paquetes

Los paquetes amplían las funcionalidades de R (gráficos, manipulación de datos, mapas, etc.).

Instalar un paquete

install.packages("tidyverse")

Instalar varios paquetes de una vez

paquetes <- c("dplyr", "ggplot2", "readr", "tidyr")
install.packages(paquetes)

Elegir repositorio (opcional)

options(repos = c(CRAN = "https://cloud.r-project.org"))
install.packages("sf")

Actualizar paquetes

update.packages(ask = FALSE)

💡 Si el paquete requiere sistema (por ej., sf, terra), instala previamente dependencias del SO (GDAL, GEOS, PROJ). En Ubuntu puedes usar apt, en macOS Homebrew, etc.


📚 3) Cargar librerías

Para usar un paquete en la sesión actual:

library(dplyr)   # carga y lanza error si no existe
require(dplyr)   # intenta cargar; devuelve TRUE/FALSE

Carga múltiple y verificación:

pkgs <- c("dplyr", "ggplot2", "readr")
no_instalados <- pkgs[!pkgs %in% installed.packages()[, "Package"]]
if (length(no_instalados)) install.packages(no_instalados)
lapply(pkgs, library, character.only = TRUE)

🔁 Debes cargar las librerías cada vez que inicias una nueva sesión.


✍️ 4) Nomenclatura básica en R

4.1 Objetos y asignación

4.2 Tipos y estructuras comunes

v <- c(1, 2, 3)                          # vector
m <- matrix(1:6, nrow = 2)               # matriz 2x3
df <- data.frame(a = 1:3, b = c("x","y","z"))  # data.frame
tb <- tibble::tibble(a = 1:3, b = letters[1:3]) # tibble

4.3 Funciones y argumentos

mean(c(1, 2, 3, 4), na.rm = TRUE)
?mean

4.4 Índices y acceso

v <- c(10, 20, 30)
v[2]           # 20
df$a           # columna 'a' (por nombre)
df[ , "b"]     # columna 'b' como vector
df[1, 2]       # fila 1, col 2

4.5 Reglas y buenas prácticas de nombres

Ejemplos correctos:

ruta_datos <- "data/ocurrencias.csv"
n_especies <- 120
promedio_altura <- mean(alturas, na.rm = TRUE)

Ejemplos a evitar:

mis datos <- "data/archivo.csv"   # espacios
PromedioAltura <- 3.2             # estilo mixto
data <- 1                         # sobreescribe nombre común

🧪 5) Mini‑ejercicios

  1. Instala y carga dplyr y readr.
  2. Crea un objeto y con los números del 1 al 5.
  3. Calcula el promedio de y.
  4. Crea un data.frame con dos columnas: especie (carácter) y altura (numérica).
  5. Extrae la segunda fila y la columna altura de tu data.frame.
# Solución sugerida
install.packages(c("dplyr","readr"))
library(dplyr); library(readr)

y <- 1:5
mean(y)

mi_df <- data.frame(
  especie = c("A", "B", "C"),
  altura  = c(10.2, 8.5, 12.1)
)

mi_df[2, "altura"]

🧯 6) Errores comunes y cómo evitarlos

dplyr::filter(mi_df, altura > 9)
stats::filter(1:10, rep(1/3, 3))

🧭 7) Recursos útiles de la sesión

sessionInfo()  # versión de R y paquetes
getwd()        # directorio de trabajo
setwd("ruta/a/tu/proyecto")  # cambiar directorio (opcional)

🎯 Resumen

Tema Qué recordar
Instalar paquetes install.packages("nombre")
Cargar librerías library(nombre) en cada sesión
Nomenclatura snake_case, nombres descriptivos, sin acentos
Ayuda ?funcion y paquete::funcion para evitar conflictos

📘 Autor: Ricardo Segovia
🧩 Proyecto: Curso SENCE-IEB — Gestión y modelamiento de datos de biodiversidad
📅 Actualizado: Octubre 2025