sim_dpcr {dpcR} | R Documentation |
Simulate Droplet Digital PCR
Description
A function that simulates results of a droplet digital PCR.
Usage
sim_dpcr(m, n, times, n_exp = 1, dube = FALSE, pos_sums = FALSE,
fluo = NULL)
Arguments
m |
the total number of template molecules used in the expertiment. Must be a positive integer. |
n |
the number of droplets per experiment. Must be a positive integer. |
times |
number of repetitions (see Details). |
n_exp |
the number of experiments that are simulated by the function.
Cannot have higher value than the |
dube |
if |
pos_sums |
if |
fluo |
if |
Details
The function contains two
implementations of the array digital PCR simulation. First one was described
in Dube at. al (2008). This method is based on random distributing m
\times times
molecules between n \times times
chambers. After this step, the required number of plates is created by the
random sampling of chambers without replacement. The above method is used,
when the dube
argument has value TRUE
.
The higher the value of the argument times
, the simulation result is
closer to theoretical calculations.
Value
If the pos_sums
argument has value FALSE
, the function
returns matrix with n
rows and n_panels
columns. Each column
represents one plate. The type of such simulation would be "nm"
. If the
pos_sums
argument has value TRUE
, the function return matrix
with one row and n_panels
columns. Each column contains the total
number of positive chambers in each plate and type of simulation would be
set as "tnp"
.
In each case the value is an object of the dpcr
class.
Note
Although Dube's simulation of digital PCR was developed for array digital PCR, it's also viable for simulating droplet-based methods.
Author(s)
Michal Burdukiewicz, Stefan Roediger.
See Also
Examples
#simulate fluorescence data
tmp_VIC <- sim_dpcr(m = 7, n = 20, times = 5, fluo = list(0.1, 0))
tmp_FAM <- sim_dpcr(m = 15, n = 20, times = 5, fluo = list(0.1, 0))
oldpar <- par(mfrow = c(1, 1))
par(mfrow = c(2,1))
plot(tmp_VIC, col = "green", type = "l")
plot(tmp_FAM, col = "blue", type = "l")
par(oldpar)
summary(tmp_FAM)
summary(sim_dpcr(m = 7, n = 20, times = 5, n_exp = 5))