Leer y escribir datos de ficheros externos en R

Leer fichero csv

Carga de datos de forma genérica, donde debes especificar, si los datos tienen cabecera, que separador los delimita y la codificación de datos a utilizar. Para caracteres europeos usar latin1

datos <- read.table(datos, «temp/datos.csv», header=TRUE, sep=»,», fileEncoding = «latin1»)

Cargar datos CSV, estos datos sabemos a priori que el separador es la coma «,».

datos1 <- read.csv(«temp/datos.csv», header=TRUE)

datos2 <- read.csv2( «temp/datos.csv», header=TRUE) #Para caracteres latinos

Cargar datos TAB, estos datos sabemos a priori que el separador es la tabulaciones «/t».

datos1 <- read.delim(«temp/datos.csv», header=TRUE)

datos2 <- read.delim2(«temp/datos.csv», header=TRUE) #Para caracteres latinos

Escribir fichero csv

Una manera fácil de escribir en ficheros csv, sin que introduzca una fila inicial con un identificador es mediante la orden:

write.csv2(poblacion, «poblacion.csv», row.names = FALSE)

Leer ficheros excel

Cargar datos de ficheros Excel, esta opción tan inmediata como el resto debido a que para cargar este tipo de ficheros debemos de instalarnos la libreria «gdata»para poder cargarlos.

install.packages(«gdata»)
library(gdata)
datos <-read.xls(«/Users/diegocalvo/Downloads/Resumen.xls»,sheet=1)

Escribir fichero excel

install.packages(«WriteXLS»)
library(WriteXLS)
WriteXLS(poblacion, «poblacion.xls»)

También se puede utilizar el paquete xlsx si se configura correctamente la maquina virtual de java.

Leer ficheros txt

datos <- read.table(«http://www.diegocalvo.es/wp-content/uploads/2016/09/datos-regresion-lineal-multiple.txt», header = TRUE)

Leer datos de BBDD MySql

install.packages(«/path/to/package/RMySQL_0.9-3.tar.gz»,repos = NULL,type=»source»)
library(«RMySQL»)
driver=dbDriver(«MySQL») #Llamar el driver de MySQL
con = dbConnect(driver,host=»localhost»,dbname=»miBasedeDatos»,user=»root»,pass=»lacontrasenia») #Crear la conexión con la BD
consulta = dbGetQuery(con,statement=»SELECT * FROM tablamia WHERE numcliente=2″)