Esportare tabelle in formato csv
La grandissima parte delle tabelle prodotte in R può essere esportata in formato CSV, con questa semplice procedura:
# dati library(carData) data(SLID)
- Creare un oggetto tabella:
tab <- table(SLID$language, SLID$sex)
- Esportarlo:
write.table(tab, "tab.csv", sep = ";", dec = ",", col.names = NA)
- Aprirlo in OpenOffice Calc o in Excel.
L'argomento col.names = NA
serve per evitare che il nome della prima colonna sia spostato a sinistra (sulla colonna del nome del righe).
Se la tabella ha una sola dimensione, utilizzeremo invece gli argomenti row.names = FALSE
e col.names
(TRUE
o FALSE
.
Se si vogliono esportare più tabelle in uno stesso file, usare l'argomento append = T
:
write.table(tab, "tabelle.csv", sep = ";", dec = ",", col.names = NA, append = TRUE)
Le tabelle, esportate una alla volta, verranno scritte tutte nello stesso file.
Il file sarà aperto correttamente da Calc e da Excel (attenzione al formato di codifica — parametro fileEncoding
—, in quanto dipende dal sistema operativo utilizzato e dalle impostazioni di lingua).
La funzione exptab
La funzione exptab()
, del pacchetto LabRS, facilita l’esportazione di una o più tabelle in formato csv in uno stesso file (separatore di decimali = virgola, NA = celle vuote, col.names = NA):
Il pacchetto accompagna il libro *“Ricerca sociale con R”* ed è disponibile da CRAN e su GitHub (le istruzioni per installarlo sono alla pagina LabRS.
library(LabRS) exptab(list(tab), file = "tab.csv")
I nomi delle tabelle da esportare vanno indicati come lista. All'interno della lista, naturalmente, possono essere indicate una o più tabelle.
Script di esempio (download)
- Esportazione_csv.R
require(carData) data(SLID) tab <- table(SLID$language, SLID$sex) write.table(tab, "tab.csv", sep = ";", dec = ",", col.names = NA # per esportare correttamente le intest. di colonna ) # PIU' TABELLE IN UN FILE write.table(tab, "tabelle.csv", sep = ";", dec = ",", col.names = NA, append = TRUE) # exptab library(LabRS) exptab(list(tab), file = "tab.csv")