Импорт файлов с расширением .sqlite в R - PullRequest
13 голосов
/ 21 марта 2012

У меня есть база данных SQLite, экспортированная (как файл sqlite формата 3?) Из Scraperwiki с расширением / расширением файла .sqlite.

Как импортировать ее в R, предположительно сопоставляя исходные таблицы базы данныхв отдельные кадры данных?

Ответы [ 2 ]

27 голосов
/ 21 марта 2012

Вы можете использовать пакет RSQLite .

Пример кода для хранения всех данных в 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=""))
}
2 голосов
/ 01 октября 2018

Для всех, кто сталкивался с этим постом, хороший способ сделать цикл из верхнего ответа с использованием библиотеки purr:

lDataFrames <- map(tables, ~{
  dbGetQuery(conn=con, statement=paste("SELECT * FROM '", .x, "'", sep=""))
})

Также означает, что вам не нужно делать:

lDataFrames <- vector("list", length=length(tables))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...