It is challenging to authenticate in a non-interactive setting. All chunks here are eval=FALSE in the build package, but a PDF will be made available with a completed run.
Here's a setup.
suppressPackageStartupMessages({ library(GoogleGenomics) }) apik = Sys.getenv("GOOGLE_API_KEY") authenticate(apiKey=apik) getBQ2 = function() { suppressPackageStartupMessages({ library(dplyr) library(bigrquery) }) my_billing = "cgc-05-0009" # replace billing info here with your own src_bigquery("cgc-05-0009", "yriMulti", billing = my_billing) }
suppressPackageStartupMessages({ library(MABT) }) bq = getBQ2() bq bano = RangedBT("cgc-05-0009", bq, "banovichSE_expressionData", "banovichSE_rowRanges") bano nrow(bano)
The current objective is to get some performance metrics on genomic computing with BigTable/BigQuery. We are not using the MultiAssayExperiment framework yet, as there is considerable detailed programming required to create objects compliant with the validating API.
We have defined an S4 class RangedBT, to wrap instances
of tbl_bigquery
. Two such tables are assumed present,
one for assay
and one for rangeData
. We also
retain information on the Google Compute Platform (GCP) project
name and the number of rows (implicitly equal for both tables).
getClass("RangedBT")
The constructor is very simple and does not validate or initialize,
though eventually it should. It takes as input the project name,
the src_bigtable
instance, and the table names in the src.
RangedBT methods(class="RangedBT")
The nrow
method is of some interest.
getMethod("nrow", "RangedBT")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.