使用 RSQLite 只读一些列?
read only some columns with RSQLite?
我只想阅读 table 中的 3 列。现在我正在做一些我认为效率很低的事情
library(dplyr, quietly = T, warn.conflicts = F)
library(RSQLite, quietly = T)
db <- dbConnect( SQLite() , "SIPP08.db" )
dbListTables(db)
w13 <- dbReadTable( db , 'w13' )
dbDisconnect(db)
df = w13 %>%
select(ssuid, epppnum,ejbind1)
有更好的方法吗?
谢谢!
我也试过像这样使用 dplyr
my_db <- src_sqlite(path = "SIPP08.db")
w13 <- tbl(my_db, "w13")
df = w13 %>%
select(ssuid, epppnum,ejbind1)
但是不行
最好直接查询SQLite DB,类似这样的东西
library(dplyr)
library(RSQLite)
db <- src_sqlite("SIPP08.db")
df <- tbl(db, sql("SELECT ssuid, epppnum, ejbind1 from wt13"))
我不明白为什么你有一个 list
但你可以只使用 DBI
包和 RSQLite
有一个 data.frame
library(DBI)
db <- dbConnect(SQLite() , "SIPP08.db")
df <- dbGetQuery(db, "SELECT ssuid, epppnum, ejbind1 from wt13")
我没有你的数据,但第一个代码使用玩具数据集对我有用。
我只想阅读 table 中的 3 列。现在我正在做一些我认为效率很低的事情
library(dplyr, quietly = T, warn.conflicts = F)
library(RSQLite, quietly = T)
db <- dbConnect( SQLite() , "SIPP08.db" )
dbListTables(db)
w13 <- dbReadTable( db , 'w13' )
dbDisconnect(db)
df = w13 %>%
select(ssuid, epppnum,ejbind1)
有更好的方法吗?
谢谢!
我也试过像这样使用 dplyr
my_db <- src_sqlite(path = "SIPP08.db")
w13 <- tbl(my_db, "w13")
df = w13 %>%
select(ssuid, epppnum,ejbind1)
但是不行
最好直接查询SQLite DB,类似这样的东西
library(dplyr)
library(RSQLite)
db <- src_sqlite("SIPP08.db")
df <- tbl(db, sql("SELECT ssuid, epppnum, ejbind1 from wt13"))
我不明白为什么你有一个 list
但你可以只使用 DBI
包和 RSQLite
有一个 data.frame
library(DBI)
db <- dbConnect(SQLite() , "SIPP08.db")
df <- dbGetQuery(db, "SELECT ssuid, epppnum, ejbind1 from wt13")
我没有你的数据,但第一个代码使用玩具数据集对我有用。