The
tuberculosis
R/Bioconductor package features tuberculosis gene expression data for
machine learning. All human samples from
GEO that did not come from cell
lines, were not taken postmortem, and did not feature recombination have
been included. The package has more than 10,000 samples from both
microarray and sequencing studies that have been processed from raw data
through a hyper-standardized, reproducible pipeline.
The Pipeline
To fully understand the provenance of data in the
tuberculosis
R/Bioconductor package, please see the
tuberculosis.pipeline
GitHub repository; however, all users beyond the extremely curious can
ignore these details without consequence. Yet, a brief summary of data
processing is appropriate here. Microarray data were processed from raw
files (e.g. CEL files) and background corrected using the
normal-exponential method and the saddle-point approximation to maximum
likelihood as implemented in the
limma R/Bioconductor
package; no normalization of expression values was done; where platforms
necessitated it, the RMA (robust multichip average) algorithm without
background correction or normalization was used to generate an
expression matrix. Sequencing data were processed from raw files
(i.e. fastq files) using the
nf-core/rnaseq pipeline inside a
Singularity container; the GRCh38 genome build was used for alignment.
Gene names for both microarray and sequencing data are HGNC-approved
GRCh38 gene names from the genenames.org
REST API.
Most users should simply install
tuberculosis
from Bioconductor.
Load Package
To use the package without double colon syntax, it should be loaded as
follows.
library(tuberculosis)
The package is lightweight, with few dependencies, and contains no data
itself.
Finding Data
To find data, users will use the tuberculosis function with a regular
expression pattern to list available resources. The resources are
organized by GEO series accession
numbers. If multiple platforms were used in a single study, the platform
accession number follows the series accession number and is separated by
a dash. The date before the series accession number denotes the date the
resource was created.
tuberculosis("GSE103147")
## 2021-09-15.GSE103147
The function will print the names of matching resources as a message and
return them invisibly as a character vector. To see all available
resources use "." for the pattern argument.
Getting Data
To get data, users will also use the tuberculosis function, but with
an additional argument, dryrun = FALSE. This will either download
resources from
ExperimentHub
or load them from the user’s local cache. If a resource has multiple
creation dates, the most recent is selected by default; add a date to
override this behavior.
The function returns a list of SummarizedExperiment objects, each
with a single assay, exprs, where the rows are features (genes) and
the columns are observations (samples). If multiple resources are
requested, multiple resources will be returned, each as a list
element.
The assay of each SummarizedExperiment object is named exprs
rather than counts because it can come from either a microarray or a
sequencing platform. If colnames begin with GSE, data comes from a
microarray platform; if colnames begin with SRR, data comes from a
sequencing platform.
No Metadata?
The SummarizedExperiment objects do not have sample metadata as
colData, and this limits their use to unsupervised analyses for the
time being. Sample metadata are currently undergoing manual curation,
with the same level of diligence that was applied in data processing,
and will be included in the package when they are ready.
tuberculosis
The tuberculosis R/Bioconductor package features tuberculosis gene expression data for machine learning. All human samples from GEO that did not come from cell lines, were not taken postmortem, and did not feature recombination have been included. The package has more than 10,000 samples from both microarray and sequencing studies that have been processed from raw data through a hyper-standardized, reproducible pipeline.
The Pipeline
To fully understand the provenance of data in the tuberculosis R/Bioconductor package, please see the tuberculosis.pipeline GitHub repository; however, all users beyond the extremely curious can ignore these details without consequence. Yet, a brief summary of data processing is appropriate here. Microarray data were processed from raw files (e.g.
CELfiles) and background corrected using the normal-exponential method and the saddle-point approximation to maximum likelihood as implemented in the limma R/Bioconductor package; no normalization of expression values was done; where platforms necessitated it, the RMA (robust multichip average) algorithm without background correction or normalization was used to generate an expression matrix. Sequencing data were processed from raw files (i.e.fastqfiles) using the nf-core/rnaseq pipeline inside a Singularity container; the GRCh38 genome build was used for alignment. Gene names for both microarray and sequencing data are HGNC-approved GRCh38 gene names from the genenames.org REST API.Installation
To install tuberculosis from Bioconductor, use BiocManager as follows.
To install tuberculosis from GitHub, use BiocManager as follows.
Most users should simply install tuberculosis from Bioconductor.
Load Package
To use the package without double colon syntax, it should be loaded as follows.
The package is lightweight, with few dependencies, and contains no data itself.
Finding Data
To find data, users will use the
tuberculosisfunction with a regular expression pattern to list available resources. The resources are organized by GEO series accession numbers. If multiple platforms were used in a single study, the platform accession number follows the series accession number and is separated by a dash. The date before the series accession number denotes the date the resource was created.The function will print the names of matching resources as a message and return them invisibly as a character vector. To see all available resources use
"."for thepatternargument.Getting Data
To get data, users will also use the
tuberculosisfunction, but with an additional argument,dryrun = FALSE. This will either download resources from ExperimentHub or load them from the user’s local cache. If a resource has multiple creation dates, the most recent is selected by default; add a date to override this behavior.The function returns a
listofSummarizedExperimentobjects, each with a single assay,exprs, where the rows are features (genes) and the columns are observations (samples). If multiple resources are requested, multiple resources will be returned, each as alistelement.The
assayof eachSummarizedExperimentobject is namedexprsrather thancountsbecause it can come from either a microarray or a sequencing platform. Ifcolnamesbegin withGSE, data comes from a microarray platform; ifcolnamesbegin withSRR, data comes from a sequencing platform.No Metadata?
The
SummarizedExperimentobjects do not have sample metadata ascolData, and this limits their use to unsupervised analyses for the time being. Sample metadata are currently undergoing manual curation, with the same level of diligence that was applied in data processing, and will be included in the package when they are ready.Contributing
To contribute to the tuberculosis R/Bioconductor package, first read the contributing guidelines and then open an issue. Also note that in contributing you agree to abide by the code of conduct.