Actualmente, en el manejo de base de datos, el software usado por la gran mayoría de las personas es Microsoft Excel.
He tenido la oportunidad de iniciar a trabajar con R studio en clases de la matería de Métodos Cuantitativos Aplicados a la Administración, de la maestría de Administración con enfoque a las contribuciones.
Esta publicación será enfocada al uso del paquete .xls para importar y exportar archivos de Excel utilizando Rstudio.
Xlsx es uno de los potentes paquetes de R para leer, escribir y formatear archivos de Excel. Es una solución basada en java y está disponible para Windows, Mac y Linux. Funciona tanto para los formatos de archivo Excel (formatos de archivo xls y xlsx).
En CRAN (el repositorio de paquetes R) podemos encontrar múltiples paquetes para trabajar con hojas de cálculo Excel desde R. Uno de ellos es el paquete xlsx, con el que también puede trabajar con hojas de versiones previas de Excel. Para instalar este paquete no tenemos más que facilitar su nombre a install.packages desde la consola de R. Si la configuración del repositorio es correcta, se descargará el paquete y también sus dependencias, quedando instalados y listos para usar.
createCell(row, colIndex=1:5)
getCells(row, colIndex=NULL, simplify=TRUE)
setCellValue(cell, value, richTextString=FALSE, showNA=TRUE)
getCellValue(cell, keepFormulas=FALSE, encoding="unknown")
En la siguiente tabla, se muestran las funciones con descripcion:
| Elementos | Concepto |
|---|---|
| row | Una lista de objetos de fila |
| colIndex | Un vector numerico que especifica el indice de columnas |
| simplify | Un valorlogico. Si es VERDAD, el resultado no se mostrara¡ en la lista |
| value | Una variable R de longitud uno |
| richTextString | Un valor logico que indica si el valor debe insertarse en la celda de Excel como texto enriquecido |
| showNA | Valor logico. Si es VERDADERO la celda contendra el valor “#N/A”, Si es Falso, se saltaran. El valor predeterminado se eligira¡ para seguir siendo compatible con las versiones anteriores de la funcion |
| keepFormulas | Un valor logico. Si es VERDADERA las formulas se devuelven como caracteres en lugar de ser evaluadas explicitamente |
| encoding | Un valor de caracter para establecer la codificacion, por ejemplo “ |
| cell | Un objeto Cell |
require(xlsx)
require(rJava)
require(xlsxjars)
file <- system.file("tests", "test_import.xlsx", package = "xlsx")
wb <-loadWorkbook(file)
sheet <- getSheets(wb)[["deletedFields"]]
ranges <- getRanges(wb)
# create a new named range
firstCell <- sheet$getRow(14L)$getCell(4L)
lastCell <- sheet$getRow(20L)$getCell(7L)
rangeName <- "Test2"
# same issue on MacOS
#createRange(rangeName, firstCell, lastCell)
createCell(row, colIndex=1:5)
getCells(row, colIndex=NULL, simplify=TRUE)
setCellValue(cell, value, richTextString=FALSE, showNA=TRUE)
getCellValue(cell, keepFormulas=FALSE, encoding="unknown")
En la siguiente tabla, se muestran las funciones con descripcion:
| Elementos | Concepto |
|---|---|
| row | Una lista de objetos de fila |
| colIndex | Un vector numerico que especifica el indice de columnas |
| simplify | Un valorlogico. Si es VERDAD, el resultado no se mostrara¡ en la lista |
| value | Una variable R de longitud uno |
| richTextString | Un valor logico que indica si el valor debe insertarse en la celda de Excel como texto enriquecido |
| showNA | Valor logico. Si es VERDADERO la celda contendra el valor “#N/A”, Si es Falso, se saltaran. El valor predeterminado se eligira¡ para seguir siendo compatible con las versiones anteriores de la funcion |
| keepFormulas | Un valor logico. Si es VERDADERA las formulas se devuelven como caracteres en lugar de ser evaluadas explicitamente |
| encoding | Un valor de caracter para establecer la codificacion, por ejemplo “ |
| cell | Un objeto Cell |
require(xlsx)
require(rJava)
require(xlsxjars)
file <- system.file("tests", "test_import.xlsx", package = "xlsx")
wb <-loadWorkbook(file)
sheet <- getSheets(wb)[["deletedFields"]]
ranges <- getRanges(wb)
# create a new named range
firstCell <- sheet$getRow(14L)$getCell(4L)
lastCell <- sheet$getRow(20L)$getCell(7L)
rangeName <- "Test2"
# same issue on MacOS
#createRange(rangeName, firstCell, lastCell)
!(C:1.png)
createCell(row, colIndex=1:5)
getCells(row, colIndex=NULL, simplify=TRUE)
setCellValue(cell, value, richTextString=FALSE, showNA=TRUE)
getCellValue(cell, keepFormulas=FALSE, encoding="unknown")
En la siguiente tabla, se muestran las funciones con descripcion:
| Elementos | Conceptos |
|---|---|
| sheet | Un objeto de hoja de calculo devuelto por createSheet o subconjunto de getSheets |
| rowIndex | Un vector numerico que especifica el indice de filas a crear. Para getRows, un NULL |
| rows | Valor devolverá todas las filas no vacias |
| inPoints | Una lista de objetos de fila |
| multiplier | Un valor numérico para especificar el múltiplo de la altura de fila predeterminada en puntos. Si se establece este valor, tiene prioridad sobre el argumento inPoints |
require(xlsx)
require(rJava)
require(xlsxjars)
file <- system.file("tests", "test_import.xlsx", package = "xlsx")
wb <- loadWorkbook(file)
sheets <- getSheets(wb)
sheet <- sheets[[2]]
rows <- getRows(sheet) # get all the rows
# see all the available java methods that you can call
#.jmethods(rows[[1]])
# for example
rows[[1]]$getRowNum() # zero based index in Java
removeRow(sheet, rows) # remove them all
# create some row
rows <- createRow(sheet, rowIndex=1:5)
setRowHeight( rows, multiplier=3) # 3 times bigger rows than the default
createSheet(wb, sheetName="Sheet1")
removeSheet(wb, sheetName="Sheet1")
getSheets(wb)
En la siguiente tabla, se muestran las funciones con descripción:
| Elementos | Conceptos |
|---|---|
| wb | Un objeto de libro como devuelto por createWorksheet o loadWorksheet |
| sheetName | Un carácter que especifica el nombre de la hoja de cálculo que se va a crear o quitar |
require(xlsx)
require(rJava)
require(xlsxjars)
file <- system.file("tests", "test_import.xlsx", package = "xlsx")
wb <- loadWorkbook(file)
sheets <- getSheets(wb)
sheet <- sheets[[1]] # extrae los datos de la hoja 1
sheet$getLastRowNum() # Muestra el total re registros que contiene la hoja 1
Conteo registros
CONCLUSIONES
El importar y exportar archivos de excel a Rstudio con el paquete xlsx, proporciona funcionalidades para realizar análisis estadísticos, diagramas que sólo con las facilidades de Rstudio se pueden obtener. La implementación de Rstudio para cubrir las necesidades de análisis y toma de decisiones da como resultado una mejora en la forma de obtener información verificable, confiable y comparable.