Puede ser que hasta antes de este curso nunca hayas visto una lista o un vector. La mayoría de los estudiosos en las ciencias sociales y de los especialistas en políticas públicas están habituados a trabajar con datos en tablas que son visibles cuando uno abre un archivo en Excel o SPSS. En estos programas hay un valor en cada celda, las filas representan las unidades de análisis y las columnas representan las variables.

Esta estructura, en su versión más simple, es conocida en R como un data frame. Un data frame se crea facilmente usando estructuras menos complejas.

Luego de abrir RStudio, de crear un R Notebook y de haberle puesto el título que deseamos, escribimos el siguiente código en el script:

#Data Frame

##caso 1
x=c('a','b','c','d')
x1=c(20,32,53,56)
x2=c('masculino','femenino','masculino','masculino')
DataFrame1=data.frame(casos=x,edadDeCasos=x1,sexoDecasos=x2)

Luego de correrlo, vemos en Environment que este código creó tres vectores. Un vector (x) tiene los nombres o IDs de las filas. Los nombres de los vectores (“x”,“x1”,“x2”) no son informativos de sus contenidos de datos. El comando data.frame enlaza a todos los tres vectores como columnas y nos brinda un nombre explícito para cada columna.

Para ver el data frame generado, correr el siguiente código:

DataFrame1

Escribamos ahora el siguiente código:

##caso 2
casos=c('a','b','c','d')
edadDeCasos=c(20,32,53,56)
sexoDeCasos=c('masculino','femenino','masculino','masculino')
DataFrame2=data.frame(edadDeCasos,sexoDeCasos,row.names=casos)

Luego de correrlo, vemos en Environment que este código creó tres vectores. Un vector (casos) tiene los nombres o IDs de las filas. Los nombres de los vectores (“casos”,“edadDeCasos”,“sexoDeCasos”) informan acerca de qué tratan sus contenidos. El comando data.frame enlaza los vectores como columnas, y los nombres de los vectores son los nombres de las columnas en el data frame. [Notar el uso de la opción row.names]

Para ver el data frame generado, correr el siguiente código:

DataFrame2

Escribamos ahora el siguiente código:

##caso3
a=list(edadDeCasos=20,sexoDeCasos='masculino')
b=list(edadDeCasos=32,sexoDeCasos='femenino')
c=list(edadDeCasos=53,sexoDeCasos='masculino')
d=list(edadDeCasos=56,sexoDeCasos='masculino')
DataFrame3=data.frame(rbind(a,b,c,d))

Luego de correrlo, vemos en Environment que este código creó cuatro listas (“a”,“b”,“c”,“d”). Cada lista tiene la información de la entrada de una fila. Cada elemento de la lista asocia cada valor a una variable. El comando data.frame enlaza todas las listas como filas, con la ayuda del comando rbind. Esta última es una forma alternativa de crear data frames, en caso tengas los datos por unidad de análisis (vale decir, por filas).