Bioconductor includes packages for analysis of diverse areas of high-throughput assays such as flow cytometry, quantitative real-time PCR, mass spectrometry, proteomics and other cell-based data.
R version: R version 4.3.0 RC (2023-04-13 r84269)
Bioconductor version: 3.17
Package version: 1.24.0
The following psuedo-code illustrates a typical R / Bioconductor session. It makes use of the flow cytometry packages to load, transform and visualize the flow data and gate certain populations in the dataset.
The workflow loads the flowCore
, flowStats
and flowWorkspace
packages and its
dependencies. It loads the ITN data with 15 samples, each of which includes,
in addition to FSC and SSC, 5 fluorescence channels: CD3, CD4, CD8, CD69 and
HLADR.
## Load packages
library(flowCore)
library(flowStats)
library(flowWorkspace)
library(ggcyto)
library(scales)
## Load data
data(ITN)
ITN
## A flowSet with 15 experiments.
##
## An object of class 'AnnotatedDataFrame'
## rowNames: sample01 sample02 ... sample15 (15 total)
## varLabels: GroupID SiteCode ... name (7 total)
## varMetadata: labelDescription
##
## column names(8): FSC SSC ... HLADr Time
First, we need to transform all the fluorescence channels. Using a GatingSet
object can help to keep track of our progress.
## Create a workflow instance and transform data using asinh
gs <- GatingSet(ITN)
trans.obj <- trans_new("myAsinh", transform=asinh, inverse=sinh)
tl <- transformerList(colnames(ITN)[3:7], trans.obj)
gs <- transform(gs, tl)
Next we use the lymphGate
function to find the T-cells in the CD3/SSC
projection.
## Identify T-cells population
lg <- lymphGate(gs_cyto_data(gs), channels=c("CD3", "SSC"),
preselection="CD4", filterId="TCells",
scale=2.5)
gs_pop_add(gs, lg)
## [1] 2
recompute(gs)
## done!
ggcyto(gs, aes(x = CD3, y = SSC)) + geom_hex(bins = 32) + geom_gate("TCells")
A typical workflow for flow cytometry data analysis in Bioconductor flow packages include data transformation, normalization, filtering, manual gating, semi-automatic gating and automatic clustering if desired. Details can be found in flowWorkFlow.pdf or the vignettes of the flow cytometry packages.
[ Back to top ]
Follow installation instructions to start using these
packages. To install the flowCore
package and all of its
dependencies, evaluate the commands
if (!"BiocManager" %in% rownames(installed.packages()))
install.packages("BiocManager")
BiocManager::install("flowCore")
Package installation is required only once per R installation. View a full list of available packages.
To use the flowCore
package, evaluate the command
library("flowCore")
This instruction is required once in each R session.
[ Back to top ]
Packages have extensive help pages, and include vignettes highlighting common use cases. The help pages and vignettes are available from within R. After loading a package, use syntax like
help(package="flowCore")
?read.FCS
to obtain an overview of help on the flowCore
package, and the
read.FCS
function, and
browseVignettes(package="flowCore")
to view vignettes (providing a more comprehensive introduction to
package functionality) in the flowCore
package. Use
help.start()
to open a web page containing comprehensive help resources.
[ Back to top ]
The following provide a brief overview of packages useful for analysis of high-throughput assays. More comprehensive workflows can be found in documentation (available from package descriptions) and in Bioconductor publications.
These packages use standard FCS files, including infrastructure, utilities, visualization and semi-autogating methods for the analysis of flow cytometry data.
flowCore, flowViz, flowQ, flowStats, flowUtils, flowFP, flowTrans,
Algorithms for clustering flow cytometry data are found in these packages:
flowClust, flowMeans, flowMerge, SamSPECTRAL
A typical workflow using the packages flowCore
, flowViz
, flowQ
and
flowStats
is described in detail in flowWorkFlow.pdf.
The data files used in the workflow can be downloaded from
here.
These packages provide data structures and algorithms for cell-based high-throughput screens (HTS).
This package supports the xCELLigence system which contains a series of real-time cell analyzer (RTCA).
These package provide algorithm for the analysis of cycle threshold (Ct) from quantitative real-time PCR data.
These packages provide framework for processing, visualization, and statistical analysis of mass spectral and proteomics data.
These packages provide infrastructure for image-based phenotyping and automation of other image-related tasks:
[ Back to top ]
sessionInfo()
## R version 4.3.0 RC (2023-04-13 r84269)
## Platform: x86_64-pc-linux-gnu (64-bit)
## Running under: Ubuntu 22.04.2 LTS
##
## Matrix products: default
## BLAS: /home/biocbuild/bbs-3.17-bioc/R/lib/libRblas.so
## LAPACK: /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3.10.0
##
## locale:
## [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
## [3] LC_TIME=en_GB LC_COLLATE=C
## [5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
## [7] LC_PAPER=en_US.UTF-8 LC_NAME=C
## [9] LC_ADDRESS=C LC_TELEPHONE=C
## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
##
## time zone: America/New_York
## tzcode source: system (glibc)
##
## attached base packages:
## [1] stats graphics grDevices utils datasets methods base
##
## other attached packages:
## [1] scales_1.2.1 ggcyto_1.28.0
## [3] ncdfFlow_2.46.0 BH_1.81.0-1
## [5] ggplot2_3.4.2 highthroughputassays_1.24.0
## [7] flowWorkspace_4.12.0 flowStats_4.12.0
## [9] flowCore_2.12.0 BiocStyle_2.28.0
##
## loaded via a namespace (and not attached):
## [1] tidyselect_1.2.0 hdrcde_3.4 farver_2.1.1
## [4] dplyr_1.1.2 bitops_1.0-7 fastmap_1.1.1
## [7] RCurl_1.98-1.12 pracma_2.4.2 XML_3.99-0.14
## [10] digest_0.6.31 lifecycle_1.0.3 cluster_2.1.4
## [13] magrittr_2.0.3 compiler_4.3.0 rlang_1.1.0
## [16] sass_0.4.5 tools_4.3.0 utf8_1.2.3
## [19] yaml_2.3.7 data.table_1.14.8 knitr_1.42
## [22] rrcov_1.7-2 labeling_0.4.2 interp_1.1-4
## [25] mclust_6.0.0 mnormt_2.1.1 plyr_1.8.8
## [28] RColorBrewer_1.1-3 rainbow_3.7 KernSmooth_2.23-20
## [31] fda_6.0.5 withr_2.5.0 RProtoBufLib_2.12.0
## [34] BiocGenerics_0.46.0 grid_4.3.0 pcaPP_2.0-3
## [37] stats4_4.3.0 fansi_1.0.4 latticeExtra_0.6-30
## [40] colorspace_2.1-0 MASS_7.3-59 cli_3.6.1
## [43] mvtnorm_1.1-3 rmarkdown_2.21 generics_0.1.3
## [46] robustbase_0.95-1 IDPmisc_1.1.20 fds_1.8
## [49] cachem_1.0.7 zlibbioc_1.46.0 splines_4.3.0
## [52] parallel_4.3.0 BiocManager_1.30.20 matrixStats_0.63.0
## [55] vctrs_0.6.2 Matrix_1.5-4 jsonlite_1.8.4
## [58] cytolib_2.12.0 bookdown_0.33 S4Vectors_0.38.0
## [61] Rgraphviz_2.44.0 magick_2.7.4 jpeg_0.1-10
## [64] jquerylib_0.1.4 hexbin_1.28.3 glue_1.6.2
## [67] DEoptimR_1.0-12 gtable_0.3.3 deldir_1.0-6
## [70] munsell_0.5.0 tibble_3.2.1 pillar_1.9.0
## [73] htmltools_0.5.5 graph_1.78.0 deSolve_1.35
## [76] R6_2.5.1 ks_1.14.0 evaluate_0.20
## [79] lattice_0.21-8 Biobase_2.60.0 highr_0.10
## [82] png_0.1-8 flowViz_1.64.0 corpcor_1.6.10
## [85] bslib_0.4.2 Rcpp_1.0.10 gridExtra_2.3
## [88] xfun_0.39 pkgconfig_2.0.3
[ Back to top ]