create_gene_query_func {qtl2} | R Documentation |
Create a function to query genes
Description
Create a function that will connect to a SQLite database of gene information and return a data frame with gene information for a selected region.
Usage
create_gene_query_func(
dbfile = NULL,
db = NULL,
table_name = "genes",
chr_field = "chr",
start_field = "start",
stop_field = "stop",
name_field = "Name",
strand_field = "strand",
filter = NULL
)
Arguments
dbfile |
Name of database file |
db |
Optional database connection (provide one of |
table_name |
Name of table in the database |
chr_field |
Name of chromosome field |
start_field |
Name of field with start position (in basepairs) |
stop_field |
Name of field with stop position (in basepairs) |
name_field |
Name of field with gene name |
strand_field |
Name of field with strand (+/-) |
filter |
Additional SQL filter (as a character string). |
Details
Note that this function assumes that the database has
start
and stop
fields that are in basepairs, but
the selection uses positions in Mbp, and the output data frame
should have start
and stop
columns in Mbp.
Also note that a SQLite database of MGI mouse genes is available at figshare: doi:10.6084/m9.figshare.5286019.v7
Value
Function with three arguments, chr
, start
,
and end
, which returns a data frame with the genes
overlapping that region, with start
and end
being
in Mbp. The output should contain at least the columns
Name
, chr
, start
, and stop
, the
latter two being positions in Mbp.
Examples
# create query function by connecting to file
dbfile <- system.file("extdata", "mouse_genes_small.sqlite", package="qtl2")
query_genes <- create_gene_query_func(dbfile, filter="(source=='MGI')")
# query_genes will connect and disconnect each time
genes <- query_genes("2", 97.0, 98.0)
# connect and disconnect separately
library(RSQLite)
db <- dbConnect(SQLite(), dbfile)
query_genes <- create_gene_query_func(db=db, filter="(source=='MGI')")
genes <- query_genes("2", 97.0, 98.0)
dbDisconnect(db)