В R не читает таблицы из SQLite
Подскажите где ошибка. Я пытаюсь вытащить таблицы из SQLite в R. В начале он не читал БД, но потом открыл ее, но таблицы все равно не видит.
```> library('RSQLite')
> require(SQLite)
Loading required package: SQLite
Warning message:
In library(package, lib.loc = lib.loc, character.only = TRUE, logical.return = TRUE, :
there is no package called ‘SQLite’
> drv <- dbDriver("SQLite")
> require('RSQLite')
> dvr <- dbDriver('RSQLite')
Error: Couldn't find driver RSQLite. Looked in:
* global namespace
* in package called RSQLite
* in package called RRSQLite
> View(drv)
> con <- dbConnect(drv, dbname= 'test.db')
> dbListTables(con)
character(0)
> dbReadTable(con, 'name')
Error: no such table: name
Ответы (1 шт):
Автор решения: aleksandr barakin
→ Ссылка
пример из документации:
загружаем пакет DBI:
> library(DBI)
подключаемся к базе данных в файле my-db.sqlite (если файла не было — будет создан):
> mydb <- dbConnect(RSQLite::SQLite(), "my-db.sqlite")
записываем в него содержимое «штатных» таблиц mtcars и iris (под другими именами для наглядности — mtcars2 и iris2):
> dbWriteTable(mydb, "mtcars2", mtcars)
> dbWriteTable(mydb, "iris2", iris)
отключаемся:
> dbDisconnect(mydb)
теперь проверка. подключаемся снова и выводим список таблиц:
> mydb <- dbConnect(RSQLite::SQLite(), "my-db.sqlite")
> dbListTables(mydb)
[1] "iris2" "mtcars2"
ещё для наглядности — запрос к таблице:
> dbGetQuery(mydb, 'select * from iris2 limit 5')
Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
4 4.6 3.1 1.5 0.2 setosa
5 5.0 3.6 1.4 0.2 setosa
всё на месте. не забываем отключиться:
> dbDisconnect(mydb)
ах, да. пример чтения таблицы в переменную:
> mydb <- dbConnect(RSQLite::SQLite(), "my-db.sqlite")
> копия.iris <- dbReadTable(mydb, "iris2")
> dbDisconnect(mydb)
> str(копия.iris)
'data.frame': 150 obs. of 5 variables:
$ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...
$ Sepal.Width : num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...
$ Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...
$ Petal.Width : num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...
$ Species : chr "setosa" "setosa" "setosa" "setosa" ...