Calculates the Cq values of a qPCR experiment within a defined range of cycles. The function can be used to extract Cq values of a chamber based qPCR for conversion into a dPCR experiment. All Cq values are obtained by Second Derivative Maximum or by Cy0 method (Guescini et al. (2008)).
limit_cq(data, cyc = 1, fluo = NULL, Cq_range = c(1, max(data[cyc])), model = l5, SDM = TRUE, pb = FALSE)
NULL
, all runs will be
considered (equivalent of (1L:ncol(data))[-cyc]
).pcrfit
).TRUE
, Cq is approximated by the second derivative
method. If FALSE
, Cy0 method is used instead.TRUE
, progress bar is shown.A data frame with two columns and number of rows equal to the number
of runs analyzed. The column Cy0
contains calculated Cy0 values. The
column in.range
contains adequate logical constant if given Cy0 value
is in user-defined Cq_range
.
The Cq_range
for this function an be defined be the user. The default
is to take all amplification curves into consideration. However, under
certain circumstances it is recommended to define a range. For example if
amplifications are positive in early cycle numbers (less than 10).
Approximated second derivative is influenced both by how often interpolation
takes place in each data interval and by the smoothing method used. The user
is encouraged to seek optimal parameters for his data himself. See
inder
for details.
The calculation of the Cy0 value (equivalent of Cq) is based on a
five-parameter function. From experience this functions leads to good
fitting and avoids overfitting of critical data sets. Regardless, the user
is recommended to test for the optimal fitting function himself (see
mselect
for details).
Guescini M, Sisti D, Rocchi MB, Stocchi L & Stocchi V (2008) A new real-time PCR method to overcome significant quantitative inaccuracy due to slight amplification inhibition. BMC Bioinformatics, 9: 326.
Ruijter JM, Pfaffl MW, Zhao S, et al. (2013) Evaluation of qPCR curve analysis methods for reliable biomarker discovery: bias, resolution, precision, and implications. Methods, San Diego Calif 59:32--46.
SDM method: inder
,
summary.der
.
Cy0 method: mselect
, efficiency
.
library(qpcR)#>#>#>#>#> #>#>#> #>#>#> #>#>#> #>test <- cbind(reps[1L:45, ], reps2[1L:45, 2L:ncol(reps2)], reps3[1L:45, 2L:ncol(reps3)]) # results.dPCR contains a column with the Cy0 values and a column with # converted values. Cq.range <- c(20, 30) ranged <- limit_cq(data = test, cyc = 1, fluo = NULL, Cq_range = Cq.range, model = l5) # Same as above, but without Cq.range no_range <- limit_cq(data = test, cyc = 1, fluo = NULL, model = l5) # Same as above, but only three columns no_range234 <- limit_cq(data = test, cyc = 1, fluo = c(2:4), model = l5)