Académique Documents
Professionnel Documents
Culture Documents
com/maximaelearning/)
(https://www.linkedin.com/company/m-xima-formaci-n/)
(https://www.maximaformacion.es/)
Data Science
MÁXIMA FORMACIÓN (HTTPS://WWW.MAXIMAFORMACION.ES) > BLOG (HTTPS://WWW.MAXIMAFORMACION.ES/BLOG/) > DATA SCIENCE +R
(HTTPS://WWW.MAXIMAFORMACION.ES/BLOG-DAT/) > ¿CÓMO LEER/GUARDAR INFORMACIÓN EN R?
En R podemos leer o guardar datos, funciones, códigos y grá cos; aquí te dejamos la mejor selección de funciones para ello.
Privacidad - Condiciones
Desde archivos delimitados (.txt, .csv o .xls)
Para guardar datos:
1. write.table() y write.csv() -los objetos tipo data.frame o matriz podemos guardarlos, uno a la vez, en un archivo
externo manteniendo su estructura-
write.table(x, file = "", append = FALSE, quote = TRUE, sep = " ", na = "NA", dec = ".", row.names = TRUE, col.n
write.csv(...)
Para leer datos:
read.table(file, header = FALSE, sep = "", quote = "\"'", dec = ".", row.names, col.names, na.strings = "NA", ..
read.csv(file, header = TRUE, sep = ",", quote = "\"", dec = ".", fill = TRUE, comment.char = "", ...)
donde «x» es el objeto que queremos escribir (en formato matriz o data.frame), en « le» especi camos la ruta y nombre del
documento que deseamos abrir/guardar, aquí «append» solo relevante si el archivo es una cadena de caracteres (si es TRUE,
la salida se agrega al archivo, si es FALSE se destruye cualquier archivo existente del nombre), «quote» sirve para indicar si
queremos comillas a los nombres (TRUE/FALSE o índices), con «sep» indicamos el tipo de separador de los datos («,», «;»,
«\t», etc.), con «na» indicamos cómo vienen representados los datos ausentes (NA, algunos usan los valores 999 o 9999, pero
no lo recomiendo), la opción «dec» nos permite especi car cómo están dados los decimales (con «,» o «.»;recuerden que R
utiliza punto y Excel comas), con «col.names» o «row.names» indicamos los nombres de columnas y las que queremos
escribir, con «na.strings» podemos indicar qué valor o carácter va a especi car los valores ausentes o NA.
> y
a b
1 Hola 2.45
Privacidad - Condiciones
> str(y) # comprueba que los datos se han guardado/leído correctamente y mantienen el formato
'data.frame': 1 obs. of 2 variables:
$ a: Factor w/ 1 level "Hola": 1
$ b: num 2.45
En el caso de que los decimales estén determinados por una coma, debemos especi carlo en R (argumento dec=»,»), ya que
R lee los decimales con puntos.
NOTA: Hay que recordar que si trabajas con RStudio tienes la opción de leer datos csv o txt fácilmente desde la barra de
herramientas, en la ventana superior derecha «Import dataset».
Desde Excel (.xls o .xlsx)
Podemos utilizar el paquete «xlsx» con el siguiente formato:
Para guardar datos:
Para leer datos:
donde «x» es el objeto que queremos escribir (en formato matriz o data.frame), en « le» especi camos la ruta y nombre del
documento que deseamos abrir/guardar, «sheetName» y «sheetIndex» sirven para especi car el nombre y número de
pestaña al que queremos acceder, respectivamente, con «col.names» o «row.names» indicamos los nombres de columnas y
las que queremos escribir, «append» nos permite agregar una pestaña a un archivo excel ya existente, con «header»
indicamos si lee la primer la como los nombres de las variables y con «colClasses» podemos especi car el tipo de variable
que queremos asignar a cada columna.
> # guardamos los datos USArrests (vienen instalados por defecto en R) en un archivo Excel (.xlsx)
> write.xlsx(USArrests, file="Ejemplo2.xlsx", sheetName="USA", append=FALSE)
> # agregamos una pestaña con los datos mtcars (también se encuentran disponibles en R)
> write.xlsx(mtcars, file="Ejemplo2.xlsx", sheetName="MTCARS", append=TRUE)
NOTA: también existen funciones que exportan los datos en formato SPSS, SAS o Stata.
load() permite reanudar una sesión anterior cargando los objetos guardados previamente.
> a=function(x){mean(x)}
> b="hola"
> c=1:5
> d=data.frame(a = 1, b = "a")
> a
function(x){mean(x)}
> b
[1] "hola"
> c
[1] 1 2 3 4 5
> d
a b
1 1 a
> str(a)
function (x)
- attr(*, "srcref")=Class 'srcref' atomic [1:8] 1 3 1 22 3 22 1 1
.. ..- attr(*, "srcfile")=Classes 'srcfilecopy', 'srcfile' <environment: 0x10471c358>
> str(b)
chr "hola"
> str(c)
int [1:5] 1 2 3 4 5
> str(d)
'data.frame': 1 obs. of 2 variables:
$ a: num 1
$ b: Factor w/ 1 level "a": 1
dump() pueden guardar los contenidos de una función u otro objeto en un archivo externo
> a=function(x){mean(x)}
> b="hola"
> c=1:5
> d=data.frame(a = 1, b = "a")
Privacidad - Condiciones
> # lee el archivo de datos de R en tu área de trabajo
> source("Ejemplo.R")
> a
function(x){mean(x)}
> b
[1] "hola"
> c
[1] 1 2 3 4 5
> d
a b
1 1 a
> str(a)
function (x)
- attr(*, "srcref")=Class 'srcref' atomic [1:8] 2 1 2 20 1 20 2 2
.. ..- attr(*, "srcfile")=Classes 'srcfilecopy', 'srcfile' <environment: 0x10b70a8b0>
> str(b)
chr "hola"
> str(c)
int [1:5] 1 2 3 4 5
> str(d)
'data.frame': 1 obs. of 2 variables:
$ a: num 1
$ b: Factor w/ 1 level "a": 1
NOTA: Personalmente pre ero utilizar save/load en lugar de dump/source para trabajar con objetos, porque es más
sencilla (dump() no es tan agradable y ocupa más espacio con los metadatos).
jpeg(filename = "Rplot%03d.jpeg", width = 480, height = 480, units = "px", pointsize = 12, quality = 75, bg = "w
con « lename» indicamos el nombre (y ruta) del archivo, con «width» y «height» indicamos el ancho y largo del grá co,
respectivamente, con «units» podemos especi car las unidades en que estamos dando el tamaño del grá co, «pointsize»
indica el tamaño del texto que gra camos, «bg» indica el color de fondo de la imagen, «quality» la calidad de la imagen JPEG
como % (con valores pequeños obtenemos mayor comprensión pero la imagen empeora), «compression» indica el tipo de
compresión utilizada (siempre que no utilicemos type=»quartz»), «res» es la resolución en ppi, «type» el tipo de archivo
(«Xlib», «quartz» o «cairo»).
Privacidad - Condiciones
pdf(file = if(onefile) "Rplots.pdf" else "Rplot%03d.pdf", width, height, onefile, family, title, fonts, paper, b
donde « le» indica el nombre y ruta del archivo que vamos a guardar, «width» y «height» indican el ancho y largo del grá co,
«online» se utiliza para especi car si queremos varias guras en un único archivo (con TRUE), «family» nos permite
especi car la familia de la fuente de texto que utilizaremos, «title» para indicar un título, «fonts» para especi car la familia
de la fuente utilizada para fuentes adicionales (por defecto Helvetica), «paper» indica el tamaño del papel («a4»,
«letter»,»legal»,»executive», etc.) , «bg» y «fg» para el color de fondo capa, resepctivamnte, «pointsize» especi ca el tamaño
de los puntos (por defecto 12), «colormodel» la con guración de color («srgb» -por defecto-, «gray» o «cmyk»).
#Rstats (https://www.maximaformacion.es/tag/rstats/)
Compartir:
CONÓCENOS
Máxima Formación el centro eres tú, te preparamos para los retos profesionales del mundo real. Desde hace más de 10 años
somos referentes en formación de software libre aplicado a las áreas de la Estadística Aplicada (R Software) y la enseñanza virtual
Deja un comentario
(Moodle).
Nombre *
ENLACES RÁPIDOS
E-mail *
Formación (https://www.maximaformacion.es/formacion/)
Comentario *
Blog: Data Science +R (https://www.maximaformacion.es/blog-dat/)
Blog: E-Learning
Privacidad - Condiciones
Avda. de la Innovación 1.
Edi cio BIC, 18016. Granada
PUBLICAR COMENTARIO
cursos@maximaformacion.es
(mailto:cursos@maximaformac
Formulario de contacto
(https://www.maximaformacio
tk.sien
w
pb
(https://www.facebook.com/maximaelearning/)
itlu.t/w
h
t/u
:(w
sop(https://twitter.com/maximaelearning/)
wyt.t/w
h
/:(w
sp(https://www.linkedin.com/company/m-
wtt/h
/:(sp(https://www.youtube.com/channel/UCky7uSy8OT9rRIi0KZEhndQ?
tth(
)rebircsbu
-axima-
sm
=sia
x_w
view_as=subscriber)
eiv
-ica—
Copyright 2018 mformaci-
rof Formación
Máxima
(https://www.facebook.com/maximaelearning/)
n/)
)/n (https://twitter.com/maximaelearning/)
(https://www.linkedin.com/company/m-xima-formaci-n/)
(https://www.youtube.com/channel/UCky7uSy8OT9rRIi0KZEhndQ?view_as=subscriber)
Privacidad - Condiciones