Cómo importar un CSV o un Excel a R
Estos ejemplos usan archivos con datos ficticios que puedes descargar: ventas.csv y facturas.xlsx. El código los lee directamente de grafoso.
Leer un CSV
library(tidyverse)
ventas <- read_csv("https://grafoso.com/r/ventas.csv", show_col_types = FALSE)
ventas# A tibble: 54 × 5
fecha sucursal producto cantidad precio
<date> <chr> <chr> <dbl> <dbl>
1 2026-01-11 Centro Café 19 85
2 2026-01-13 Centro Té 13 60
3 2026-01-03 Centro Galletas 16 45
4 2026-01-12 Norte Café 13 85
5 2026-01-17 Norte Té 23 60
6 2026-01-02 Norte Galletas 15 45
7 2026-01-14 Sur Café 36 85
8 2026-01-03 Sur Té 25 60
9 2026-01-03 Sur Galletas 37 45
10 2026-02-02 Centro Café 19 85
11 2026-02-08 Centro Té 15 60
12 2026-02-19 Centro Galletas 37 45
# ℹ 42 more rowsPara tu propio archivo, pon su ruta, como read_csv("datos/ventas.csv"). Si tu CSV usa punto y coma, prueba con read_csv2().
Revisar qué se leyó
glimpse() muestra cada columna con su tipo. Comprueba que las fechas sean date y los importes, dbl.
glimpse(ventas)Rows: 54
Columns: 5
$ fecha <date> 2026-01-11, 2026-01-13, 2026-01-03, 2026-01-12, 2026-0…
$ sucursal <chr> "Centro", "Centro", "Centro", "Norte", "Norte", "Norte"…
$ producto <chr> "Café", "Té", "Galletas", "Café", "Té", "Galletas", "Ca…
$ cantidad <dbl> 19, 13, 16, 13, 23, 15, 36, 25, 37, 19, 15, 37, 26, 20,…
$ precio <dbl> 85, 60, 45, 85, 60, 45, 85, 60, 45, 85, 60, 45, 85, 60,…Leer un Excel
Los archivos en la web hay que descargarlos primero. Con uno en tu equipo, basta read_excel("facturas.xlsx", sheet = "Facturas").
library(readxl)
archivo <- tempfile(fileext = ".xlsx")
download.file("https://grafoso.com/r/facturas.xlsx", archivo, mode = "wb", quiet = TRUE)
excel_sheets(archivo)
facturas <- read_excel(archivo, sheet = "Facturas")
facturas[1] "Facturas" "Notas"
# A tibble: 6 × 4
folio cliente fecha total
<chr> <chr> <chr> <dbl>
1 F-101 Abarrotes Luna 2026-01-15 11600
2 F-102 Papelería Sol 2026-01-28 5800
3 F-103 Taller Río 2026-02-10 2320
4 F-104 Farmacia Mar 2026-02-22 8700
5 F-105 Ferretería Cielo 2026-03-05 4640
6 F-106 Panadería Sur 2026-03-19 1740Aquí la fecha quedó como texto (chr) porque así está en el archivo. Ve cómo limpiar datos.
Preguntas frecuentes
¿Qué significa «could not find function»?
Normalmente, que falta cargar el paquete. Corre library(tidyverse) o library(readxl) primero.
¿Y si salen mal los acentos?
Puede ser la codificación del archivo. En read_csv prueba con locale = locale(encoding = "latin1").