## ----style, echo = FALSE, results = 'asis'------------------------------- BiocStyle::markdown() ## ----, echo = FALSE------------------------------------------------------ apiKey <- Sys.getenv("GOOGLE_API_KEY") if (nchar(apiKey) == 0) { warning(paste("To build this vignette, please setup the environment variable", "GOOGLE_API_KEY with the public API key from your Google", "Developer Console before loading the GoogleGenomics package,", "or run GoogleGenomics::authenticate.")) knitr::knit_exit() } ## ------------------------------------------------------------------------ suppressPackageStartupMessages(library(VariantAnnotation)) fl <- system.file("extdata", "chr22.vcf.gz", package="VariantAnnotation") vcf <- readVcf(fl, "hg19") vcf <- renameSeqlevels(vcf, c("22"="chr22")) vcf ## ------------------------------------------------------------------------ # Authenticated on package load from the env variable GOOGLE_API_KEY. suppressPackageStartupMessages(library(GoogleGenomics)) # TODO Right now we're just getting a few variants. Later update this to retrieve them all. system.time({ granges <- getVariants(datasetId="10473108253681171589", chromosome="22", start=50300077, end=50303000, # TODO end=50999964 converter=variantsToGRanges) }) ## ------------------------------------------------------------------------ vcf <- vcf[1:length(granges)] # Truncate the VCF data suppressPackageStartupMessages(library(testthat)) expect_equal(start(granges), start(vcf)) expect_equal(end(granges), end(vcf)) expect_equal(as.character(granges$REF), as.character(ref(vcf))) expect_equal(as.character(unlist(granges$ALT)), as.character(unlist(alt(vcf)))) expect_equal(granges$QUAL, qual(vcf)) expect_equal(granges$FILTER, filt(vcf)) ## ------------------------------------------------------------------------ suppressPackageStartupMessages(library(TxDb.Hsapiens.UCSC.hg19.knownGene)) txdb <- TxDb.Hsapiens.UCSC.hg19.knownGene rd <- rowData(vcf) vcf_locations <- locateVariants(rd, txdb, CodingVariants()) vcf_locations granges_locations <- locateVariants(granges, txdb, CodingVariants()) granges_locations expect_equal(granges_locations, vcf_locations) ## ------------------------------------------------------------------------ suppressPackageStartupMessages(library(BSgenome.Hsapiens.UCSC.hg19)) vcf_coding <- predictCoding(vcf, txdb, seqSource=Hsapiens) vcf_coding granges_coding <- predictCoding(rep(granges, elementLengths(granges$ALT)), txdb, seqSource=Hsapiens, varAllele=unlist(granges$ALT, use.names=FALSE)) granges_coding expect_equal(as.matrix(granges_coding$REFCODON), as.matrix(vcf_coding$REFCODON)) expect_equal(as.matrix(granges_coding$VARCODON), as.matrix(vcf_coding$VARCODON)) expect_equal(granges_coding$GENEID, vcf_coding$GENEID) expect_equal(granges_coding$CONSEQUENCE, vcf_coding$CONSEQUENCE) ## ------------------------------------------------------------------------ suppressPackageStartupMessages(library(org.Hs.eg.db)) annots <- select(org.Hs.eg.db, keys=granges_coding$GENEID, keytype="ENTREZID", columns=c("SYMBOL", "GENENAME","ENSEMBL")) cbind(elementMetadata(granges_coding), annots) ## ------------------------------------------------------------------------ sessionInfo()