我正在寻找一种从更大的表中提取大量行的快速方法。我的表的顶部如下:
> head(dbsnp)
snp gene distance
rs5 rs5 KRIT1 1
rs6 rs6 CYP51A1 1
rs7 rs7 LOC401387 1
rs8 rs8 CDK6 1
rs9 rs9 CDK6 1
rs10 rs10 CDK6 1
和尺寸:
> dim(dbsnp)
[1] 11934948 3
我想选择行名包含在列表中的行:
> head(features)
[1] "rs1367830" "rs5915027" "rs2060113" "rs1594503" "rs1116848" "rs1835693"
> length(features)
[1] 915635
毫不奇怪,这样做的直接方法temptable = dbsnp[features,]
需要相当长的时间。
我一直在寻找通过 R 中的 sqldf 包执行此操作的方法。我认为这可能会更快。不幸的是,我不知道如何在 SQL 中选择具有特定行名的行。
谢谢。