ddPCRclust

A package for automated quantification of non-orthogonal, multiplexed ddPCR data

https://github.com/bgbrink/ddpcrclust

Science Score: 33.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
  • .zenodo.json file
  • DOI references
    Found 2 DOI reference(s) in README
  • Academic publication links
    Links to: ncbi.nlm.nih.gov
  • Committers with academic emails
    14 of 19 committers (73.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.3%) to scientific vocabulary

Keywords

biological-data-analysis clustering ddpcr r
Last synced: 9 months ago · JSON representation

Repository

A package for automated quantification of non-orthogonal, multiplexed ddPCR data

Basic Info
Statistics
  • Stars: 4
  • Watchers: 3
  • Forks: 5
  • Open Issues: 0
  • Releases: 0
Topics
biological-data-analysis clustering ddpcr r
Created over 9 years ago · Last pushed over 6 years ago
Metadata Files
Readme

README.md

ddPCRclust

A package for automated quantification of multiplexed ddPCR data.

This R package was designed to automatically quantify the events of a multiplexed ddPCR reaction. During a ddPCR run, each marker gene is fluorescently labeled with a combination of FAM and/or HEX fluorophore, giving it a unique footprint in the two-dimensional space represented by the intensities for each color channel. The position of each droplet within this space reveals, how many and, more importantly, which marker genes it contains. Thus, droplets that belong to the same marker cluster together. However, correctly identifying and labelling these clusters is not trivial, since one droplet can contain more than one marker. To accurately quantify the droplet count for each marker, it is crucial to both identify the clusters and label them correctly, based on their position.

Example B1 Example G1

For robustness, ddPCRclust incorporates adapted versions of three established, independent clustering algorithms: the flowDensity algorithm, published in 2012 by M. Jafar Taghiyar and Mehrnoush Malek, the clustering algorithm SamSPECTRAL, a version of spectral clustering adapted to flow cytometry data and the flowPeaks package, developed by Yongchao Ge and Stuart C. Sealfon. The results are combined into a cluster ensemble. This enhances the precision and the agreement between the three approaches provides a measure of confidence for clustering results.

Result B1 Example G1

Installation

The package can be installed from Bioconductor (recommended). ```R

try http:// if https:// URLs are not supported

source("https://bioconductor.org/biocLite.R") biocLite("ddPCRclust") ```

Alternatively, you can also install this package like any other package from GitHub using devtools or by downloading the archive.
Disclaimer: This method currently only works, when the GNU Scientific Library (GSL) is installed on your machine, because one of the dependencies (flowPeaks) needs it in order to compile. R library(devtools) install_github("bgbrink/ddPCRclust")

Usage

This package was written in close cooperation with the BC Cancer Agency in Vancouver, Canada. Please read their recently published manuscript for details on the background and how to produce the necessary data.

The raw data should be csv files. Each file represents a two-dimensional data frame. Each row within the data frame represents a single droplet, each column the respective intensities per colour channel:

Ch1 Amplitude | Ch2 Amplitude --- | --- 2360.098 | 6119.26953 2396.3916 | 1415.31665 2445.838 | 6740.79639 2451.63867 | 1381.74683 2492.55884 | 1478.19617 2519.6355 | 7082.25049 ⋮ | ⋮

Since one experiment most likely consists of many different files, naming them apropriately is important in order to keep things organized. We chose to use a unique identifier in each filename of the form "^[[:upper:]][[:digit:]][[:digit:]]$" (A01, A02, A03, B01, B02, ...), which is usually included automatically by the ddPCR machine. A set of eight example files is included in this package.

In order to use all functions of this package, it is also necessary to create a template with more information about this experiment. The template has to be a csv file with a header, which contains information about each of the raw data files according to their unique identifier, as explained above. A template for the eight example files is also included in this package.

> Name of your experiment, channel1=HEX, channel2=FAM, annotations(date, experimentor, etc)

Well|Sample type|No of markers|Marker 1|Marker 2|Marker 3|Marker 4 ---|---|---|---|---|---|--- B01|Blood|4|a|b|c|d G01|FFPE|4|a|b|c|d F02|Blood|3|a||c|d D03|FFPE|3|a||c|d A04|FFPE|4|a|b|c|d G07|Cell line|3|a||c|d G08|Cell line|3|a||c|d E09|FFPE|2|||c|d

Example Files

We provide eight examplary ddPCR files under ddPCRclust/inst/extdata/

Run the algorithm using the provided examples with the following command: ```R

Read files

exampleFiles <- list.files(paste0(find.package('ddPCRclust'), '/extdata'), full.names = TRUE) files <- readFiles(exampleFiles[3])

To read all example files uncomment the following line

files <- readFiles(exampleFiles[1:8])

Read template

template <- readTemplate(exampleFiles[9])

Run ddPCRclust

result <- ddPCRclust(files, template)

Plot the results

library(ggplot2) p <- ggplot(data = result$B01$data, mapping = aes(x = Ch2.Amplitude, y = Ch1.Amplitude)) p <- p + geompoint(aes(color = factor(Cluster)), size = .5, na.rm = TRUE) + ggtitle('B01 example')+themebw() + theme(legend.position='none') `` All functions are documented. You can find additional information using the help function of R:?ddPCRclust`

Reference

Brink, Benedikt G., et al. "ddPCRclust: An R package and Shiny app for automated analysis of multiplexed ddPCR data." Bioinformatics (2018).

https://www.ncbi.nlm.nih.gov/pubmed/29534153

License

ddPCRclust is licensed under the Artistic License 2.0.

Owner

  • Name: Benedikt Brink
  • Login: bgbrink
  • Kind: user
  • Location: Bonn, Germany
  • Company: OMIQ, Dotmatics

GitHub Events

Total
Last Year

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 107
  • Total Committers: 19
  • Avg Commits per committer: 5.632
  • Development Distribution Score (DDS): 0.57
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Benedikt Brink b****k 46
Benedikt Brink b****k@c****e 15
jmeskas j****s@b****a 13
Benedikt Brink b****k@B****l 6
Benedikt Brink b****k@d****e 6
Benedikt Brink b****k@d****e 4
Benedikt Brink b****k@B****x 2
Benedikt Brink b****k@d****e 2
Benedikt Brink b****k@d****e 2
vobencha v****n@r****g 2
Benedikt Brink b****k@d****e 1
Benedikt Brink b****k@d****e 1
Benedikt Brink b****k@d****e 1
Benedikt Brink b****k@d****e 1
Benedikt Brink b****k@d****e 1
Benedikt Brink b****k@d****e 1
Benedikt Brink b****k@d****e 1
Benedikt Brink b****k@d****e 1
Benedikt Brink b****k@d****e 1

Packages

  • Total packages: 1
  • Total downloads:
    • bioconductor 13,027 total
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 5
  • Total maintainers: 1
bioconductor.org: ddPCRclust

Clustering algorithm for ddPCR data

  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 13,027 Total
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 22.4%
Downloads: 67.3%
Last synced: 9 months ago

Dependencies

DESCRIPTION cran
  • R >= 3.5 depends
  • R.utils * imports
  • SamSPECTRAL * imports
  • clue * imports
  • flowCore * imports
  • flowDensity >= 1.13.3 imports
  • flowPeaks * imports
  • ggplot2 * imports
  • openxlsx * imports
  • parallel * imports
  • plotrix * imports
  • BiocStyle * suggests