2012-03-21 8 views
11

Ho un database SQLite esportato (come file in formato sqlite 3?) Da Scraperwiki con l'estensione file/sqlite/il suffisso del file.Importazione di file con estensione .sqlite in R

Come si importa in R, presumibilmente mappando le tabelle del database originale in frame di dati separati?

risposta

19

È possibile utilizzare il pacchetto RSQLite.

Alcuni codice di esempio per memorizzare i dati intere data.frame s:

library("RSQLite") 

## connect to db 
con <- dbConnect(drv=RSQLite::SQLite(), dbname="YOURSQLITEFILE") 

## list all tables 
tables <- dbListTables(con) 

## exclude sqlite_sequence (contains table information) 
tables <- tables[tables != "sqlite_sequence"] 

lDataFrames <- vector("list", length=length(tables)) 

## create a data.frame for each table 
for (i in seq(along=tables)) { 
    lDataFrames[[i]] <- dbGetQuery(conn=con, statement=paste("SELECT * FROM '", tables[[i]], "'", sep="")) 
} 
+0

Grazie - mi sembra di avere un problema ora w/i miei file di esportazione di SQLite, che sembra rotto per quanto riguarda l'importazione va (vedo il tabelle ma lDataFrames mostra elementi NULL ... Devo andare a fare alcuni test penso .. Sqlite src è https://scraperwiki.com/scrapers/export_sqlite/f1_timing/ – psychemedia

+0

@psychemedia Alcuni dei nomi delle tabelle contiene "- "Devi citare il nome della tabella' SELECT * FROM 'TABLE-ONE''. Ho aggiornato il mio codice di esempio – sgibb

+0

Grazie ... ho notato che ora io stesso ... Doh! – psychemedia

Problemi correlati