Importar datos en R

Author
Affiliation

Mtro. Santiago Ríos

Introducción

En este módulo, aprenderás a importar datos en R desde diferentes fuentes, como archivos CSV y Excel. Importar datos es el primer paso en cualquier análisis de datos, ya que te permite cargar los datos en R para que puedas manipularlos, analizarlos y visualizarlos.

Terminología

Dataset o conjunto de datos

  • Un dataset o conjunto de datos es una colección de datos organizados en filas y columnas.
  • Frecuentemente, estos datos son una combinación de números y caracteres.
  • Estos conjuntos de datos contienen variables y observaciones.

Variables

  • Las variables son las columnas de un conjunto de datos.
  • Cada variable representa una característica o atributo de los datos.
  • Por ejemplo, en la siguiente figura, tenemos 7 variables: ID, Apellido (Last Name), Nombre (First Name), Sexo, ciudad (City), Estado (State), y ocupación (Occupation).
  • Los nombres de las variables son tomados de la primera fila del conjunto de datos.

Observaciones

  • Las observaciones son las filas de un conjunto de datos.
  • Cada observación representa un caso o una instancia de los datos.

Visualización de un conjunto de datos

  • R tiene varios conjuntos de datos de ejemplo que puedes cargar y explorar.
  • Corre el siguiente código para ver un conjunto de datos de ejemplo llamado mtcars:

data.frame

  • En R, los conjuntos de datos se almacenan en objetos llamados dataframes.
  • Al igual que una hoja de cálculo, un dataframe tiene filas y columnas, donde cada fila representa una observación y cada columna representa una variable.

Crear un DataFrame

  • Podemos crear un dataframe en R utilizando la función data.frame().
  • Esto se hace especificando los nombres de las columnas y las observaciones de cada columna.
  • Observa que es similar a construir vectores, donde cada columna es un vector.
  • En este código, creamos un dataframe llamado datos con tres columnas: nombre, edad y ciudad.
  • El nombre, edad y ciudad son las variables, y Juan, María y Pedro, 25,30,35, CDMX, GDL, MTY son las observaciones de cada variable.

Leer un archivo CSV

  • Los archivos CSV (valores separados por comas) son una forma común de almacenar datos.
  • Comunmente, los datos que queresmos analizar se encuentran en archivos CSV.
  • Para leer un archivo CSV en R, puedes utilizar la función read.csv(). Esta función lee un archivo CSV y lo convierte en un dataframe que puedes manipular y analizar.
  • Si ya tomaste la lección sobre directorios, sigue el siguiente código.

Primero, vamos a usar la función list.files() para ver que archivos se encuentran en el directorio actual.

  • Veremos que hay una carpeta llamada datos.
  • ¿Cómo sabemos que es una carpeta y no un archivo? Los archivos se muestran con el nombre del archivo y la extensión, como datos.csv.

Ahora, vamos a listar los archivos dentro de la carpeta datos.

  • Veremos que hay un archivo llamado mtcars.csv en la carpeta datos.

  • ahora que tenemos la ruta del archivo, podemos leerlo con la función read.csv("ruta_archivo").

Leer archivos de Excel .xls y .xlsx

Para leer archivos de Excel en R, puedes utilizar las funciones read_excel() del paquete readxl y read.xlsx() del paquete openxlsx. Estas funciones leen archivos de Excel (archivo.xlsx) y los convierten en dataframes que puedes manipular y analizar. Por ejemplo, si tienes un archivo de Excel llamado datos.xlsx, puedes leerlo y almacenarlo en una variable llamada datos_excel de la siguiente manera:

```{r}
# instalar el paquete readxl si no lo tienes instalado
install.packages("readxl")
# Cargar la librería
library(readxl)

# Leer un archivo de Excel
# el argumento sheet = 1 indica que se leerá la primera hoja del archivo
datos_excel <- readxl::read_excel("datos.xlsx", sheet = 1)

```

Exportar un DataFrame

Para exportar un dataframe a un archivo CSV en R, puedes utilizar la función write.csv(). Esta función toma un dataframe y lo guarda en un archivo CSV en el directorio de trabajo actual. Por ejemplo, si tienes un dataframe llamado datos y quieres guardarlo en un archivo CSV llamado datos_exportados.csv, puedes hacerlo de la siguiente manera:

```{r}
# Exportar un dataframe a un archivo CSV
write.csv(datos, "datos_exportados.csv", row.names = FALSE)
```

datos incluidos en R

R incluye varios conjuntos de datos de ejemplo que puedes utilizar para practicar y aprender. Algunos de los conjuntos de datos más comunes incluyen mtcars, iris, airquality, swiss, faithful, ChickWeight, ToothGrowth, CO2. Puedes cargar estos conjuntos de datos utilizando la función data() y luego acceder a ellos como dataframes normales. Por ejemplo, para cargar el conjunto de datos mtcars y mostrar las primeras filas, puedes hacer lo siguiente:

Otros formatos de archivo

Además de los archivos CSV y Excel, R puede leer y escribir en muchos otros formatos de archivo, como archivos de texto, archivos JSON y formatos de otros programas estadísticos, como SPSS, SAS, Graphpad Prism y más. Sólo como referencia, aquí hay una lista de algunas funciones útiles para leer y escribir en diferentes formatos de archivo en R. En este curso, nos centraremos principalmente en los archivos CSV y Excel.

```{r}
library(pzfx)
df <- read_pzfx(system.file("extdata/exponential_decay.pzfx", package="pzfx"), table="Exponential decay")
```
```{r}
library(haven)
data11 <- read_sav("data/airline_passengers.sav")
```
```{r}
library(R.matlab)
data14 <- readMat("data/cross_dsads.mat")
```
```{r}
library(rjson)
JsonData <- fromJSON(file = 'data/drake_data.json')
print(JsonData[1])
```
```{r}
library(haven)
data10 <- read_sas('data/lond_small.sas7bdat')
```

Funciones útiles para Dataframes

Los dataframes en R tienen muchas funciones útiles que te permiten manipular y analizar los datos. Algunas de las funciones más comunes son:

head(): Muestra las primeras filas de un dataframe.
tail(): Muestra las últimas filas de un dataframe.
summary(): Proporciona un resumen estadístico de un dataframe.
str(): Muestra la estructura de un dataframe.
nrow(): Devuelve el número de filas de un dataframe.
ncol(): Devuelve el número de columnas de un dataframe.