Curso de R:
Capitulo 4: Trabajo con datos I.
Como paso previo a la creación de conjuntos de datos cabe señalar que con R podemos importar datos tanto de otras aplicaciones como SAS, SPSS,... como de ficheros de texto planos. Digo esto porque nos sería muy complicado el crear un fichero de datos más o menos grande con las funciones de R que conocemos hasta la fecha ya que sería muy engorroso, además en la mayoría de las ocasiones que realicemos un estudio los datos serán un fichero ASCII.
Por otra parte si queremos introducir los datos mediante R también podemos emplear la función scan(); creamos el vector vector.ej:
> vector.ej<-scan() 1: 2.3 4.5 6.7 4: 3 .5 5.6 8 8: Read 7 items |
Simplemente nos limitamos a ir introduciendo los datos, seguidamente pulsamos intro y en este caso R nos indica con 4: que ya llevamos 3 elementos y que el siguiente elemento es el cuarto, si pulsamos dos veces intro salimos de la función y R nos indica que ha leido 7 items. Es otra forma de introducir los datos un poco más cómoda que la que habíamos visto hasta ahora pero que sigue teniendo sus limitaciones como por ejemplo que no podemos trabajar con variables alfanuméricas. Esta función scan puede contener como argumentos el fichero ASCII del cual provienen los datos:
Conjunto de datos datos.txt: 2.3 4.5 6.7 3.5 5.6 8 |
> vector.ej<-scan(c:\\ruta completa\\datos.txt) |
Deciros que no me he equivocado y que en la ruta hay que poner \\ en vez de \. Esta es la forma que tiene R de leer los datos. Pero de nuevo tiene sus limitaciones ya que para leer datos de esta forma el fichero plano tiene que tener una estructura de lo más básica. Si por ejemplo la estructura fuera del tipo:
Nombre Apellidos Salario Edad Fernando Torres 12000 45 Arturo Fernandez 30000 56 Felipe Miñambres 24000 34 David Tejero 10000 23 |
Se puede ver que la primera fila contiene los nombres de las variables, la función R apropiada para estos casos es read.table que tiene una estructura muy sencilla:
> empresas <- read.table("C:\empresa.dat",header=TRUE) Warning message: incomplete final line found by readTableHeader on `C:empresa.dat' > empresas Nombre Apellidos Salario Edad 1 Fernando Torres 12000 45 2 Arturo Fernandez 30000 56 3 Felipe Miñambres 24000 34 4 David Tejero 10000 23 |
Obtenemos un mensaje de error que no debe preocuparnos (espero) ya que el conjunto de datos empresas aparece completo como deseábamos. Con esta función hemos creado una estructura de datos (que ya referenciábamos en el primer capítulo del manual) llamada data frame que puede leer objetos de varios tipos por columnas. Posteriormente con estos objetos podemos realizar los pertinentes estudios. Otra nota a añadir es que R nos indexa las observaciones si no le indicamos una columna índice esto se realiza con al función row.names=1.
A partir de este momento estamos en disposición de empezar a trabajar más en profundidad con R, estamos en disposición de realizar estudios estadísticos y contrastes de muchos y variados tipos y posteriormente importar datos de otras aplicaciones y realizar análisis muy completos con una herramienta gratuita y de fácil manejo. Si no tienes SAS en casa tranquilo que puedes defenderte estupendamente con R.