Ho un dataframe abbastanza grande in R che vorrei esportare in SPSS. Questo file mi ha causato ore di mal di testa cercando di importarlo in R, in primo luogo, tuttavia ho avuto successo usando read.fwf()
usando le opzioni comment.char="%"
(un carattere che non appare nel file) e fill= TRUE
(era un file ASCII a larghezza fissa con alcune righe prive di tutte le variabili, causando messaggi di errore).Il modo più efficiente di esportare data.frames grandi (3.9 mills) in un file di testo?
In ogni caso, il mio frame di dati attualmente consiste di 3,9 mill osservazioni e 48 variabili (tutti i caratteri). Posso scriverlo in un file abbastanza rapidamente suddividendolo in 4 x 1 mill set di obs con df2 <- df[1:1000000,]
seguito da write.table(df2)
ecc., Ma non è possibile scrivere l'intero file in un'unica operazione senza che il computer si blocchi e necessiti di un hard reset per tornare indietro su.
Dopo aver ascoltato storie aneddotiche su come R non è adatto per dataset di grandi dimensioni per anni, questa è la prima volta che ho riscontrato un problema di questo tipo. Mi chiedo se ci sono altri approcci (basso livello di "dumping" del file direttamente su disco?) O se c'è qualche pacchetto sconosciuto che può gestire l'esportazione di file di grandi dimensioni di questo tipo in modo efficiente?
Ciao Richie, non sono sicuro se 8 GB di RAM si qualifichi come "short on RAM", anche con questo set di dati. Comunque, cercherò di usare 'sqldf()' come suggerito da JD Long poiché lo sto usando molto nelle mie analisi. Grazie per il puntatore! – jans