The `Omicidx` R6 class provides an interface for interacting with the omicidx database.
Public fields
connectionA DBI connection object to the omicidx database.
.dplyr_tblsA list to cache dplyr table objects.
Methods
Method sql()
Execute a SQL query on the omicidx database.
Method tbl()
Get a dplyr table object for a specified table in the omicidx database.
Examples
# # Create a new Omicidx object
omicidx <- Omicidx$new()
# # List all table names in the database
omicidx$table_names()
#> ((table_schema || '.') || table_name)
#> 1 main._catalog
#> 2 mart.sra_metadata
#> 3 raw.ncbi_biosamples
#> 4 raw.sra_experiments
#> 5 raw.sra_runs
#> 6 raw.sra_samples
#> 7 raw.sra_studies
#> 8 staging.stg_geo_platforms
#> 9 staging.stg_geo_samples
#> 10 staging.stg_geo_series
#> 11 staging.stg_ncbi_bioprojects
#> 12 staging.stg_ncbi_biosamples
#> 13 staging.stg_sra_accessions
#> 14 staging.stg_sra_experiments
#> 15 staging.stg_sra_runs
#> 16 staging.stg_sra_samples
#> 17 staging.stg_sra_studies
# Get a dplyr table object for a specific table
sra_studies_tbl <- omicidx$tbl("staging.stg_sra_studies")
# Perform a dplyr query
result <- sra_studies_tbl |>
filter(study_type == "RNA-Seq") |>
head(10) |>
collect()
print(result)
#> # A tibble: 0 × 17
#> # ℹ 17 variables: accession <chr>, study_accession <chr>, title <chr>,
#> # description <chr>, abstract <chr>, study_type <chr>, center_name <chr>,
#> # broker_name <chr>, alias <chr>, BioProject <chr>, GEO <chr>,
#> # pubmed_ids <list>, has_complete_metadata <lgl>, attributes <list>,
#> # identifiers <list>, xrefs <list>, _loaded_at <dttm>