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.4.0 RC (2024-04-16 r86468)
Bioconductor version: 3.19
Package version: 1.29.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.4.0 RC (2024-04-16 r86468)
## Platform: x86_64-pc-linux-gnu
## Running under: Ubuntu 22.04.4 LTS
##
## Matrix products: default
## BLAS: /home/biocbuild/bbs-3.20-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.3.0 ggcyto_1.31.2
## [3] ncdfFlow_2.49.0 BH_1.84.0-0
## [5] ggplot2_3.5.1 highthroughputassays_1.29.0
## [7] flowWorkspace_4.15.5 flowStats_4.15.1
## [9] flowCore_2.15.3 BiocStyle_2.31.0
##
## loaded via a namespace (and not attached):
## [1] tidyselect_1.2.1 hdrcde_3.4 farver_2.1.1
## [4] dplyr_1.1.4 bitops_1.0-7 fastmap_1.1.1
## [7] RCurl_1.98-1.14 pracma_2.4.4 XML_3.99-0.16.1
## [10] digest_0.6.35 lifecycle_1.0.4 cluster_2.1.6
## [13] magrittr_2.0.3 compiler_4.4.0 rlang_1.1.3
## [16] sass_0.4.9 tools_4.4.0 utf8_1.2.4
## [19] yaml_2.3.8 data.table_1.15.4 knitr_1.46
## [22] rrcov_1.7-5 labeling_0.4.3 interp_1.1-6
## [25] mclust_6.1.1 mnormt_2.1.1 plyr_1.8.9
## [28] RColorBrewer_1.1-3 rainbow_3.8 KernSmooth_2.23-22
## [31] fda_6.1.8 withr_3.0.0 RProtoBufLib_2.15.1
## [34] BiocGenerics_0.49.1 grid_4.4.0 pcaPP_2.0-4
## [37] stats4_4.4.0 fansi_1.0.6 latticeExtra_0.6-30
## [40] colorspace_2.1-0 MASS_7.3-60.2 tinytex_0.50
## [43] cli_3.6.2 mvtnorm_1.2-4 rmarkdown_2.26
## [46] generics_0.1.3 robustbase_0.99-2 IDPmisc_1.1.21
## [49] fds_1.8 cachem_1.0.8 zlibbioc_1.49.3
## [52] splines_4.4.0 parallel_4.4.0 BiocManager_1.30.22
## [55] matrixStats_1.3.0 vctrs_0.6.5 Matrix_1.7-0
## [58] jsonlite_1.8.8 cytolib_2.15.3 bookdown_0.39
## [61] S4Vectors_0.41.7 clue_0.3-65 Rgraphviz_2.47.0
## [64] magick_2.8.3 jpeg_0.1-10 jquerylib_0.1.4
## [67] hexbin_1.28.3 glue_1.7.0 DEoptimR_1.1-3
## [70] gtable_0.3.5 deldir_2.0-4 munsell_0.5.1
## [73] tibble_3.2.1 pillar_1.9.0 htmltools_0.5.8.1
## [76] graph_1.81.1 deSolve_1.40 R6_2.5.1
## [79] ks_1.14.2 evaluate_0.23 lattice_0.22-6
## [82] Biobase_2.63.1 highr_0.10 png_0.1-8
## [85] flowViz_1.67.0 corpcor_1.6.10 bslib_0.7.0
## [88] Rcpp_1.0.12 gridExtra_2.3 xfun_0.43
## [91] pkgconfig_2.0.3
[ Back to top ]