Leer Datos en el entorno R

Para la lectura de datos podemos utilizar las siguientes opciones: - read.table, read.csv - readLines - source - dget - load - unserialize

Asimismo, existen las siguientes opciones para escribir los datos (exportar): - write.table - writeLines - dump - dput - save - serialize

Función read.table

A partir del formato de read.table, la cual es muy eficiente con archivos pequeños. También existen opciones como read.csv; read.csv2; read.fortran; read.socket son especializadas.

La función read.table está compuesta por los siguientes parámetros: -file -header -sep -colClasses -nrows -comment.char -skip -stringsasfactors

Para ver las opciones de read.table, podemos utilizar la función help(“read.table”), lo cual nos desplegará el menú de ayuda.

Consejos: 1. Usar col.Classes: inicial <-read.table(“datos.txt”,nrows=100) clases <-sapply(inicial,class)

datos<-read.table(“datos.txt”, colClasses=clases)

  1. Usar nrows: hace indicación de cuantos reglones va leer

Estas funciones pueden ser muy demandantes con archivos grandes (e.g registros de censos), por lo cual debemos estar preparados con la RAM de nuestra computadora.

Función write.table

Parecida a read.table con sus versiones especializadas.

En la práctica la función read.table se puede aplicar de la siguiente manera:

tesis1 <- read.table(“./nombrearchivo.csv”, header=TRUE,sep=“,”)

Es importante notar que estamos utilizando una forma reducida para llamar el archivo (“./nombrearchivo.csv”) o path, lo cual evita tener que poner toda la dirección de la carpeta. Para determinar donde estamos trabajando podemos aplicar la función

getwd() # indica cual es la dirección de trabajo actual
## [1] "C:/proyectosR/BIL502-UNA-ECB/TEMA2-MANEJODATOSR"

setwd() # indicamos cual es la dirección de trabajo que queremos.

Es importante hacer notas que esto es más sencillo si utilizamos direcciones reducidas en nuestros computadores y todavía más sencillo si creamos proyectos de R, lo cual nos hace más fácil la portabilidad de los archivos que estemos realizando. Existen paquetes muy útiles como Packrat, el cual colabora con la portabilidad de los proyectos, sin embargo, en este curso no abarcaremos este aspecto.

En RStudio también es posible ingresar datos mediante la función: Import Dataset, disponible en la pantalla superior derecha de su computador.

Ahora, trate de ingresar los datos del ejercicio Nereidae!!!!!!

Subset de datos en el entorno R

Cuando tenemos elementos muy grandes, tales como bases de datos o análisis con muchas variables, en ocasiones vamos a requerir realizar los subsets (filtrado de los datos). A continuación se presentan algunas funciones para lograr los subsets. También puede revisar el siguiente link: Data manipulation with tidyr and dplyr o Tidyverse donde podrá encontrar formas más “actuales” para el manejo de datos. Para efectos de este curso vamos a dar algunas directrices de trabajo.

El primer elemento que nos ayuda a realizar subsets en un elemento en R es el [ ] o el doble corchet [[ ]]. Construya el siguiente vector:

subset1 <-c("a", "b", "d", "e", "f")

Para realizar el subset podemos utilizar las siguientes opciones:

subset1[3]
## [1] "d"
subset1[4:5]
## [1] "e" "f"
subset1 [subset1 < "e"]
## [1] "a" "b" "d"

Para las matrices, dado que tienen dos dimensiones, se deben asignar en el subset, siendo [a,b], donde a es el reglón y b la columna. Construyamos la siguiente matriz:

mat<-matrix(1:10, 2,5)
mat
##      [,1] [,2] [,3] [,4] [,5]
## [1,]    1    3    5    7    9
## [2,]    2    4    6    8   10
mat[1,3] # A qué elemento corresponde?
## [1] 5

mat[3,1] # A qué elemento corresponde?

¿Cómo podríamos llamar la columna 4? ¿Cómo podríamos llamar la fila 1?

Se debe considerar que cuando se solicita un elemento de la matriz, este se vuelve en vector, pero si utilizamos la función drop=False, logramos que no ocurra esto.

mat[1,4, drop=F]
##      [,1]
## [1,]    7

En el caso de las listas, también podemos utilizar los corchetes.

list1 <-list(hola1=1:10, hola2=0.05)
list1[1]
## $hola1
##  [1]  1  2  3  4  5  6  7  8  9 10
list1$hola1
##  [1]  1  2  3  4  5  6  7  8  9 10

Para extender las opciones de Subsetting puede revisar con mayor detalle en Cookbook R, donde se enuncian más formas para realizar esta acción. Vea también que existen muchos más recursos en esta página!!