Lee los archivos xlsx en R
- Dejemos que el usuario especifique el archivo a importar
-
Usa la biblioteca
openxlsx
para leer el archivo xlsx en R
La forma más común de obtener datos de una hoja de cálculo de Excel e importarlos a R es usar Excel para guardar los datos en un formato más convencional, como .csv
. Pero si necesita importar archivos xlsx
repetidamente, es preferible una opción más rápida, como usar un paquete para importar archivos de Excel directamente a R.
Muchos paquetes en R tienen la capacidad de leer archivos xls
/xlsx
. Uno de ellos es readxl
. Este paquete tiene menos dependencias externas que otros paquetes, lo que hace que sea fácil de instalar en casi cualquier sistema operativo. La forma más directa de agregarlo a tu entorno R es instalar toda la librería tidyverse
con el siguiente comando:
install.packages("tidyverse")
Pero como no es una librería tidyverse
central, aún así necesita ser cargada explícitamente con el comando library(readxl)
. Entonces podrás importar un archivo de Excel con la función read_excel
, así:
MySheet <- read_excel("ExcelFile.xlsx")
En el ejemplo anterior, importamos el contenido de una hoja de cálculo llamada ExcelFile.xlsx
en un DataFrame llamado MySheet
.
Dejemos que el usuario especifique el archivo a importar
Si no conoce de antemano la ubicación del archivo de Excel y quiere dejar que el usuario elija el archivo para leerlo, puede usar file.choose()
en lugar de especificar explícitamente la ruta del archivo:
MySheet <- read_excel(file.choose())
La función read_excel()
tiene otros parámetros para especificar una hoja en particular para importar o especificar un valor que represente NAs
en lugar de celdas en blanco. En este ejemplo, estamos importando una hoja llamada data
e indicando que las celdas con el contenido NA
serán interpretadas como NAs
:
MySheet <- read_excel("ExcelFile.xlsx", sheet = "data", na = "NA")
Usa la biblioteca openxlsx
para leer el archivo xlsx en R
Otro paquete que puedes usar para leer archivos de Excel en R es openxlsx
. Este paquete simplifica la lectura y escritura de archivos xlsx y, como readxl
, y no depende de Java, Perl, u otras bibliotecas externas. Usando Rcpp
, openxlsx
proporciona tiempos rápidos de lectura/escritura incluso para archivos enormes. Esta librería funciona bien con archivos xlsx, pero no soporta archivos xls antiguos.
Openxlsx
proporciona la función read.xlsx
que crea un DataFrame con los datos leídos del archivo importado. Tiene muchas opciones para especificar si el área a importar contiene nombres de filas y columnas, el nombre o número de la hoja de trabajo a importar, las filas y columnas a importar, entre muchas otras.
En el siguiente ejemplo, instalamos el paquete openxlsx
y abrimos la biblioteca. Luego, usamos las opciones de read.xlsx
para importar las filas 2, 4 y 6 y las columnas 5 a 7 de la hoja 1 de un archivo llamado Data.xlsx con estos datos:
Después de eso, imprimimos el contenido del cuadro de datos resultante en la consola. Como no leemos los nombres de las columnas del archivo, ponemos el parámetro colNames
en False
. R asignará automáticamente una secuencia de nombres por defecto: X1
, X2
, X3
a las columnas del DataFrame importado. Note que podemos especificar qué filas y columnas importar, especificándolas con vectores:
install.packages("openxlsx")
library("openxlsx")
MyData <- read.xlsx(xlsxFile="c:/Tmp/Data.xlsx", sheet = 1, rows = c(2, 4, 6), cols = 5:7, colNames = FALSE)
MyData
Producción :
X1 X2 X3
1 34 12 17
2 15 25 66
3 32 45 56
Para más información, consulte la documentación oficial documentación de openxlsx.