Cómo cargar datos de un fichero CSV (columnas separadas por tabulador) y cómo hacer filtros y otros tratamientos en R.
- Requisitos para hacer tratamiento de ficheros CSV en R.
- El contenido del fichero de ejemplo personas.csv.
- Cargar y preparar datos de CSV en R.
- Filtrar información CSV en R.
Requisitos para hacer tratamiento de ficheros CSV en R
El requisito único será disponer de R y RStudio, así como de sus librerías básicas. En el siguiente artículo explicamos cómo instalar R, RStudio y sus librerías básicas:
El contenido del fichero de ejemplo personas.csv
El contenido del fichero CSV que usaremos de ejemplo, será el siguiente:
1 2 3 4 5 6 7 8 |
Alonso Javier Lucas 48 Murcia Casado Graduado en Ingeniería Informática Vicente Luis Chamorro 32 Madrid Soltero Licenciado en Economía Francisco Javier Montoro 33 Murcia Soltero Graduaco Escolar Eduardo Pérez Montoro 51 Murcia Soltero Licenciado en Literatura Avelino Pan y Vino 29 Madrid Casado Graduado en Ingeniería Informática Domingo Díaz 45 Salamanca Divorciado Licenciado en Economía Domingo Lacalle 36 Alicante Divorciado Licenciado en Ciencias del Deporte Patricia Gómez 41 Alicante Casado Graduado Escolar |
Cada campo, en este caso, va separado por tabulador. Este fichero lo llamaremos «personas.csv».
Cargar y preparar datos de CSV en R
En primer lugar, instalaremos la librería que utilizaremos «readr», ejecutando en R:
1 |
install.packages("readr") |
La usaremos, ejecutando:
1 |
library(readr); |
Cargaremos el fichero CSV con columnas separadas por tabulador, guardando el contenido en el dataset «ds», usando el comando:
1 |
ds <- read.csv("D:\\ProyectoA\\R\\personas.csv", sep = "\t", header = FALSE); |
Con el comando siguiente mostraremos los datos cargados en el dataset «ds»:
1 |
View(ds) |
Para mostrar el tipo de datos que R ha asignado a cada columna (y el nombre), ejecutaremos el comando:
1 |
print(lapply(ds, class)); |
Y con este otro comando obtendremos el sumario de los datos cargados (número de columnas, tipo, número de filas, media, mínimo, máximo, tamaño, etc.):
1 |
summary(ds) |
Para establecer un nombre personalizado a cada columna del dataset «ds», ejecutaremos los siguientes comandos:
1 2 |
nombres_columnas <- c("Nombre","Edad","Provincia","Estado","Estudios"); colnames(ds) <- nombres_columnas; |
Filtrar información CSV en R
Para obtener las personas con edad mayor de 35 y guardar el resultado en un dataset llamado dsMayorEdad35, ejecutaremos:
1 |
dsMayorEdad35 <- subset(ds, Edad > 35); |
Para mostrar el contenido del dataset dsMayorEdad35, ejecutaremos:
1 |
View(dsMayorEdad35) |
Para obtener la media de edad de las personas de más de 30 años y que su provincia sea «Alicante» o «Murcia», ejecutaremos:
1 |
mean(dsMayorEdad35$Edad[dsMayorEdad35$Provincia == "Alicante" | dsMayorEdad35$Provincia == "Murcia"]); |
Que nos devolverá: 44.