Hola, soy Miguel y esta vez les traigo otro artículo.
Índice
Cómo manejar diferentes tipos de datos en R
Completé dos cursos en DataCamp
que me introdujeron en el concepto de importar datos a R
. Hay numerosas formas de importar los datos. Me gustaría discutir en detalle algunos de los métodos que aprendí en el curso. Empecemos.
Los datos pueden provenir de muchas fuentes. Algunos de los más comunes son:
- Archivos planos:
CSV
,txt
,tsv
, etc. - Datos de Excel.
- Bases de datos:
Postgresql
,Mysql
, etc. - Web
- Softwares estadísticos:
SAS
,SPSS
,STATA
.
Archivos planos
Según Wikipedia, la base de datos de archivo plano es una base de datos almacenada en un archivo llamado archivo plano. Los registros siguen un formato uniforme y no existen estructuras para indexar o reconocer relaciones entre registros.
El archivo es simple. Un archivo plano puede ser un archivo de texto sin formato o un archivo binario.
A continuación se enumeran algunos de los paquetes que lo ayudarán a lidiar con los archivos planos en R
.
Este paquete se carga por defecto cuando carga R
.
-
Read.table()
: Función principal. Lee un archivo en formato de tabla y crea un marco de datos a partir de él. Ofrece muchos argumentos para clasificar los datos entrantes. -
Read.csv()
: Función de envoltura pararead.table ()
. Se utiliza para leer archivos separados por comas (CSV
). -
Read.delim()
: Función de envoltura utilizada para leer archivos separados por tabulaciones.read.delim ()
se usa si los números en su archivo usan puntos(.)
como decimales. -
Read.csv2()
:read.csv ()
yread.csv2 ()
son idénticos. La única diferencia es que se configuran dependiendo de si usa puntos o comas como puntos decimales en los números. -
Read.delim2()
:read.delim2
se usa cuando los números en su archivo usan comas(,)
como decimales.
Lector
Este paquete nos facilita la vida. Es rápido, conveniente y más eficiente que el paquete utiles. Tiendo a usar esto siempre.
read_r admite siete formatos de archivo con siete funciones:
-
Read_csv()
: archivos separados por comas (CSV). -
Read_tsv()
: archivos separados por tabulaciones. -
Read_delim()
: archivos delimitados generales. -
Read_fwf()
: archivos de ancho fijo. -
Read_table()
: archivos tabulares donde las columnas están separadas por espacios en blanco. -
Read_log()
: archivos de weblog.
El paquete readr
funciona con Tibbles
. Según la documentación, Tibbles
son marcos de datos, pero modifican algunos comportamientos más antiguos para hacer la vida un poco más fácil.
La impresión también muestra las clases de columna que faltan en la salida de read.csv
.
La métrica clave de Matt Dowle y Arun Srinivasan del autor de data.table
es la velocidad. El paquete trata principalmente sobre la manipulación de datos, pero también presenta una función súper poderosa para leer los datos en R
: fread ()
.
Si tiene archivos enormes para importar a R
, puede usar el paquete data.table
.
Fread ()
puede manejar los nombres automáticamente. También puede inferir tipos de columna y separadores de campo sin tener que especificarlos.
Es una versión mejorada de read.table ()
que es extremadamente rápida, más conveniente y agrega más funcionalidad.
Sobresalir
La herramienta más común utilizada en el análisis de datos es Microsoft Excel. La estructura típica del archivo de Excel contiene diferentes hojas con datos tabulares.
Necesitamos explorar los archivos y luego importar algunos datos de ellos. R
ofrece dos funciones para manejar esto.
-
Excel_sheets()
: Explore diferentes hojas.
El resultado es un vector de caracteres simple que devuelve los nombres de las hojas dentro del archivo de Excel.
-
Read_excel()
: Importa los datos aR
.
La primera hoja se importa como tibble
de forma predeterminada. Podemos especificar explícitamente la hoja que se va a importar utilizando un índice o configurando un argumento de hoja. Ambas llamadas a continuación hacen el mismo trabajo.
Sin embargo, cargar todas las hojas manualmente y luego combinarlas en una lista puede ser bastante tedioso. Afortunadamente, puedes automatizar esto con lapply()
Esta función devuelve una lista de la misma longitud.
Desarrollado por Martin Studer. Actúa como un puente entre R
y Excel
. Permite al usuario realizar cualquier actividad como editar hojas, formatear datos, etc. en Excel desde dentro de R
.
Funciona con archivos XLS
y XLSX
. XLConnect
funciona sobre Java. Asegúrese de tener todas las dependencias como Java Development Kit (JDK)
instaladas y registradas correctamente en R
.
Instale el paquete antes de usarlo, el siguiente comando hará el trabajo por usted:
LoadWorkbook()
: Esta función carga un archivo de Microsoft Excel en R
que se puede manipular más. Establecer un argumento de creación en Verdadero asegurará que el archivo se creará si aún no existe.
Este objeto es el puente real entre R
y Excel
. Después de crear un libro de trabajo en R
, puede usarlo para obtener la información del archivo de Excel al que se vincula. Algunas de las funciones básicas son:
- Get_Sheets (): Esta función devuelve las hojas como una lista del archivo de Excel.
- ReadWorksheet (): Permite al usuario leer los datos de las hojas especificadas simplemente dando el nombre de la hoja en el argumento de hoja de la función.
La mejor parte de esta función es que puede especificar desde qué fila y qué columna comenzar a leer información.
PD: asegúrese de que el conjunto de datos se importe al directorio de trabajo antes de realizar cualquier operación en él.
Bases de datos relacionales
Una base de datos relacional es una colección de elementos de datos con relaciones predefinidas entre ellos. Estos elementos están organizados como un conjunto de tablas con columnas y filas.
Las tablas se utilizan para contener información sobre los objetos que se van a representar en la base de datos.
- Fuente abierta:
MySQL
,PostgreSQL
,SQLite
. - Propiedad:
Base de datos Oracle
,Microsoft SQL Server
.
Dependiendo del tipo de base de datos a la que desee conectarse, tendrá que usar diferentes paquetes en R
.
- MySQL:
RMySQL
. - PostgreSQL:
RPostgreSQL
. - Base de datos Oracle:
ROracle
.
DBI
define una interfaz para la comunicación entre R
y los sistemas de administración de bases de datos relacionales. Todas las clases de este paquete son virtuales y deben ampliarse mediante las diversas implementaciones de R / DBMS
.
En términos más técnicos, DBI
es una interfaz y RMySQL
es la implementación.
Como de costumbre, primero instalemos el paquete e importemos la biblioteca DBI
. La instalación de RMySQL
instalará automáticamente DBI
.
El primer paso es crear una conexión a la base de datos MySQL
remota. Puedes hacerlo de la siguiente manera
Ahora que estamos conectados a la base de datos, tenemos acceso al contenido que contiene. Las siguientes funciones nos ayudan a leer, enumerar, consultar y realizar otras operaciones en la base de datos.
- dbListTables: Esta función permite al usuario listar las tablas en la base de datos. Esta función requiere el objeto de conexión como entrada y genera un vector de caracteres con los nombres de las tablas.
- dbReadTable: Lee las tablas deseadas y muestra los resultados como un marco de datos.
Importación selectiva
Podemos hacer esto de dos formas
- Leer la tabla completa y usar la función de subconjunto para subconjuntar los datos.
-
dbGetQuery()
: Esta función envía una consulta, recupera resultados y luego borra el conjunto de resultados. La cadena aquí es una consultaSQL
común. - dbFetch (): Esta función ayuda a recuperar registros de consultas ejecutadas previamente y nos permite especificar el máximo de registros para recuperar por búsqueda.
No olvides desconectarte de él.
Web
Descargar un archivo de Internet significa enviar una solicitud GET
y recibir el archivo que solicitó.
Al leer archivos CSV
, TSV
o de texto
, podemos especificar la URL
como una cadena de caracteres en la función de la siguiente manera.
R
no sabe cómo manejar archivos de Excel que vienen directamente de la web, por lo que debemos descargarlos antes de importarlos.
Una vez descargado el archivo podemos usar la función read_excel
para leer e importar el archivo.
La notación de objetos JavaScript (JSON)
es una forma de datos muy simple, concisa y bien estructurada. Además, es legible por humanos y también fácil de interpretar y generar para máquinas.
Esta es la razón por la que JSON
se utiliza para comunicarse con API
(Interfaz de programación de aplicaciones).
Es un analizador y generador robusto JSON
y de alto rendimiento para R
.
Primero instalemos el paquete. Después de una instalación exitosa, usaremos la función fromJSON
para obtener los datos de la URL.
Otra función interesante del paquete es embellecer y minificar. Se utilizan principalmente para formatear los datos JSON
.
-
Prettify / minify
: Prettify agrega sangría a una cadenaJSON
; minify elimina todas lassangrías / espacios en blanco
.
Paquetes de software estadístico
Este paquete se utiliza para leer archivos de datos SAS
, STATA
, SPSS
. Lo hace envolviendo la biblioteca ReadStat
C
de Evan Miller. Este paquete es extremadamente sencillo de usar.
Instalemos el paquete primero y carguemos la biblioteca.
-
Read_sas
: La función lee archivosSAS
.
Del mismo modo, podemos usar read_stata()
, read_dta()
y read_por()
y read_sav()
para otros tipos de archivos.
Escrito por R Core Team
. Es menos consistente en nombrar y usar pero admite muchos formatos de datos externos como Systat
, Weka
, etc. También podemos exportar los datos a varios formatos.
Instalemos el paquete y carguemos la biblioteca.
El inconveniente de este paquete es que no se puede importar .sas7bdat. Solo puede importar bibliotecas SAS (.xport)
Este paquete puede leer archivos .dta
de las versiones 5
a 12
de STATA
.
- Convert.factors: Convierta los valores
STATA
etiquetados en factoresR
. - Convert.dates: Convierta las fechas y horas de
STATA
enDate
yPOSIXct
. - Missing.type: Si es
FALSO
, convierta todos los tipos de valores perdidos aNA
. Si esTRUE
, almacena cómo faltan valores en los atributos.
- Use.value.labels: Convierta los valores
STATA
etiquetados en factoresR
. - To.data.frame: Devuelve un marco de datos en lugar de una lista.
R
. La carga de los datos es el primer paso en cualquier proceso como análisis, visualización y manipulación.
Estos son la plétora de métodos disponibles para importar datos a R
.
Utilizo predominantemente read_excel
y read_csv
.
¿Qué usas? Comentalo. Gracias por leer.
Añadir comentario