| Title: | Importing Real-Time Thermo Cycler (qPCR) Data from RDML Format Files |
|---|---|
| Description: | Imports real-time thermo cycler (qPCR) data from Real-time PCR Data Markup Language (RDML) and transforms to the appropriate formats of the 'qpcR' and 'chipPCR' packages. Contains a dendrogram visualization for the structure of RDML object and GUI for RDML editing. |
| Authors: | Konstantin A. Blagodatskikh [cre, aut], Stefan Roediger [aut], Michal Burdukiewicz [aut] (ORCID: <https://orcid.org/0000-0001-8926-582X>), Andrej-Nikolai Spiess [aut] |
| Maintainer: | Konstantin A. Blagodatskikh <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 1.3 |
| Built: | 2026-05-21 07:35:35 UTC |
| Source: | https://github.com/pcruniversum/rdml |
RDML objectExtract data points from RDML object as.data.frame.
## S3 method for class 'RDML' x[i, j, dp.type = "adp"]## S3 method for class 'RDML' x[i, j, dp.type = "adp"]
x |
|
i, j
|
indices. |
dp.type |
Type of fluorescence data (i.e. 'adp' for qPCR or 'mdp' for melting). |
adpsType R6 class.
adpsType R6 class.
An R6Class generator object.
Contains matrix of amplification data. Must have three columns:
PCR cycle at which data point was collected (every cycle must have unique number).
temperature in degrees Celsius at the time of measurement (optional).
raw fluorescence intensity measured.
Inherits: rdmlBaseType.
adpsType$new(fpoints)
fpointsassertMatrix. Matrix with amplification data points.
RDML::rdmlBaseType -> adpsType
new()
adpsType$new(fpoints)
.asXMLnodes()
adpsType$.asXMLnodes(node.name)
clone()
The objects of this class are cloneable with this method.
adpsType$clone(deep = FALSE)
deepWhether to make a deep clone.
#cycles cyc <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40) #fluorescence fluo <- c(2.0172, 2.0131, 2.0035, 2, 2.0024, 2.0056, 2.0105, 2.0179, 2.0272, 2.0488, 2.0922, 2.1925, 2.3937, 2.7499, 3.3072, 4.0966, 5.0637, 6.0621, 7.0239, 7.8457, 8.5449, 9.1282, 9.6022, 9.9995, 10.2657, 10.4989, 10.6813, 10.8209, 10.9158, 10.9668, 11.0053, 11.0318, 11.0446, 11.044, 11.0052, 10.9671, 10.9365, 10.9199, 10.897, 10.8316) #temperature temp <- c(55, 55, 55, 55, 54, 54, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 56, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55) #combine all variables into a proper object data <- data.frame(cyc = cyc, tmp = temp, fluor = fluo) #create adps object adpsType$new(data) #create adps object without temperature data adpsType$new(data[, -2])#cycles cyc <- c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40) #fluorescence fluo <- c(2.0172, 2.0131, 2.0035, 2, 2.0024, 2.0056, 2.0105, 2.0179, 2.0272, 2.0488, 2.0922, 2.1925, 2.3937, 2.7499, 3.3072, 4.0966, 5.0637, 6.0621, 7.0239, 7.8457, 8.5449, 9.1282, 9.6022, 9.9995, 10.2657, 10.4989, 10.6813, 10.8209, 10.9158, 10.9668, 11.0053, 11.0318, 11.0446, 11.044, 11.0052, 10.9671, 10.9365, 10.9199, 10.897, 10.8316) #temperature temp <- c(55, 55, 55, 55, 54, 54, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 56, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55, 55) #combine all variables into a proper object data <- data.frame(cyc = cyc, tmp = temp, fluor = fluo) #create adps object adpsType$new(data) #create adps object without temperature data adpsType$new(data[, -2])
Annotate samples by setting a property and its value. For example, sex could be a property with the possible values M or F. Inherits: rdmlBaseType.
An R6Class generator object.
checkString. Property name
checkString. Value
RDML::rdmlBaseType -> annotationType
new()
annotationType$new(property, value)
clone()
The objects of this class are cloneable with this method.
annotationType$clone(deep = FALSE)
deepWhether to make a deep clone.
#set sex property annotationType$new(property = "sex", value = "M")#set sex property annotationType$new(property = "sex", value = "M")
idType object to character
Function to convert idType object to character.
## S3 method for class 'idType' as.character(x, ...)## S3 method for class 'idType' as.character(x, ...)
x |
|
... |
Further arguments to be passed. |
reactIdType object to character
Function to convert reactIdType object to character.
## S3 method for class 'reactIdType' as.character(x, ...)## S3 method for class 'reactIdType' as.character(x, ...)
x |
|
... |
Further arguments to be passed. |
RDML$AsDendrogram() wrapperRead more at RDML.AsDendrogram
AsDendrogram(obj, ...)AsDendrogram(obj, ...)
obj |
|
... |
|
RDML$AsTable() wrapperRead more at RDML.AsTable
AsTable(obj, ...)AsTable(obj, ...)
obj |
|
... |
|
Parent class for inner usage. Inherits: rdmlBaseType.
An R6Class generator object.
baseTemperatureType$new(duration, temperatureChange = NULL, durationChange = NULL, measure = NULL, ramp = NULL)
durationcheckCount. Duration of this step in seconds.
temperatureChangecheckNumber. Change of the temperature between two consecutive cycles: actual temperature = temperature + (temperatureChange * cycle counter)
durationChangecheckCount. Change of the duration between two consecutive cycles: actual duration = duration + (durationChange * cycle counter)
measuremeasureType. Indicates to make a measurement and store it as meltcurve or real-time data.
rampcheckNumber. Allowed temperature change between two consecutive cycles in degrees Celsius per second. If unstated, the maximal change rate is assumed.
RDML::rdmlBaseType -> baseTemperatureType
new()
baseTemperatureType$new( duration, temperatureChange = NULL, durationChange = NULL, measure = NULL, ramp = NULL )
clone()
The objects of this class are cloneable with this method.
baseTemperatureType$clone(deep = FALSE)
deepWhether to make a deep clone.
Description of the cDNA synthesis method. Inherits: rdmlBaseType.
An R6Class generator object.
cdnaSynthesisMethodType$new(enzyme = NULL, primingMethod = NULL, dnaseTreatment = NULL, thermalCyclingConditions = NULL)
@section Fields:
enzymecheckString. Name of the enzyme used for reverse transcription.
primingMethoddnaseTreatmentcheckFlag if TRUERNA was
DNAse treated prior cDNA synthesis.
thermalCyclingConditionsRDML::rdmlBaseType -> cdnaSynthesisMethodType
new()
cdnaSynthesisMethodType$new( enzyme = NULL, primingMethod = NULL, dnaseTreatment = NULL, thermalCyclingConditions = NULL )
clone()
The objects of this class are cloneable with this method.
cdnaSynthesisMethodType$clone(deep = FALSE)
deepWhether to make a deep clone.
For some commercial assays, the primer sequences may be unknown. This element allows to describe commercial assays. Inherits: rdmlBaseType.
An R6Class generator object.
commercialAssayType$new(company, orderNumber)
@section Fields:
companyorderNumberRDML::rdmlBaseType -> commercialAssayType
new()
commercialAssayType$new(company, orderNumber)
clone()
The objects of this class are cloneable with this method.
commercialAssayType$clone(deep = FALSE)
deepWhether to make a deep clone.
The method used to determine the Cq value. Can take values:
Inherits: enumType.
An R6Class generator object.
cqDetectionMethodType$new(value)
@section Fields:
valueRDML::rdmlBaseType -> RDML::enumType -> cqDetectionMethodType
clone()
The objects of this class are cloneable with this method.
cqDetectionMethodType$clone(deep = FALSE)
deepWhether to make a deep clone.
Software name and version used to collect and analyze the data. Inherits: rdmlBaseType.
An R6Class generator object.
dataCollectionSoftwareType$new(name, version)
@section Fields:
nameversionRDML::rdmlBaseType -> dataCollectionSoftwareType
new()
dataCollectionSoftwareType$new(name, version)
clone()
The objects of this class are cloneable with this method.
dataCollectionSoftwareType$clone(deep = FALSE)
deepWhether to make a deep clone.
dataCollectionSoftwareType$new(name = "ExampleSoft", version = "1.0")dataCollectionSoftwareType$new(name = "ExampleSoft", version = "1.0")
Inherits: rdmlBaseType.
An R6Class generator object.
dataType$new(tar, cq = NULL, excl = NULL, adp = NULL, mdp = NULL, endPt = NULL, bgFluor = NULL, bgFluorSlp = NULL, quantFluor = NULL)
taridReferencesType. TargetID - A reference to a target.
cqcheckNumber. Calculated fractional PCR cycle used for downstream quantification. Negative values express following condition: Not Available: -1.0 . (can be NaN for BioRad Maestro compatibility)
exclcheckString. Excluded. If excl
is present, this entry should not be evaluated. Do not set this element
to FALSE if the entry is valid. Instead, leave the entire excl
element out instead. It may contain a string with a reason for the exclusion.
Several reasons for exclusion should be
seperated by semicolons ";".
adpmdpendPt. Value of the endpoint measurement.
bgFluorcheckNumber. Background fluorescence (the y-intercept of the baseline trend based on the estimated background fluorescence).
bgFluorSlpcheckNumber.
Background fluorescence slope - The slope of the baseline trend based on
the estimated background fluorescence. The element should be absent to
indicate a slope of 0.0; If this element is present without the bgFluor
element it should be ignored.
quantFluorcheckNumber. Quantification flourescence - The fluorescence value corresponding to the treshold line.
AsDataFrame(dp.type = "adp")Represents amplification (
dp.type = "adp"
) or melting (dp.type = "mdp") data
points as data.frame
RDML::rdmlBaseType -> dataType
new()
dataType$new( tar, cq = NULL, excl = NULL, adp = NULL, mdp = NULL, endPt = NULL, bgFluor = NULL, bgFluorSlp = NULL, quantFluor = NULL )
GetFData()
dataType$GetFData(dp.type = "adp")
clone()
The objects of this class are cloneable with this method.
dataType$clone(deep = FALSE)
deepWhether to make a deep clone.
These elements should be used if the same description applies to many samples, targets or experiments. Inherits: rdmlBaseType.
An R6Class generator object.
documentationType$new(id, text = NULL)
@section Fields:
ididType. Identificator.
textcheckString. Text.
RDML::rdmlBaseType -> documentationType
new()
documentationType$new(id, text = NULL)
clone()
The objects of this class are cloneable with this method.
documentationType$clone(deep = FALSE)
deepWhether to make a deep clone.
Detailed information about the dye. Inherits: rdmlBaseType.
An R6Class generator object.
dyeType$new(id, description = NULL)
@section Fields:
ididType. Identificator.
descriptioncheckString. Description.
RDML::rdmlBaseType -> dyeType
new()
dyeType$new(id, description = NULL)
clone()
The objects of this class are cloneable with this method.
dyeType$clone(deep = FALSE)
deepWhether to make a deep clone.
Generic class for creating objects thet can take limited list of values.
Inherits: rdmlBaseType.
An R6Class generator object.
enumType$new(value)
@section Fields:
valuecheckString. Value.
RDML::rdmlBaseType -> enumType
new()
enumType$new(value)
print()
enumType$print(...)
.asXMLnodes()
enumType$.asXMLnodes(node.name)
clone()
The objects of this class are cloneable with this method.
enumType$clone(deep = FALSE)
deepWhether to make a deep clone.
Contact details of the experimenter. Inherits: rdmlBaseType.
An R6Class generator object.
experimenterType$new(id, firstName, lastName, email = NULL, labName = NULL, labAddress = NULL)
@section Fields:
ididType. Identificator.
firstNamecheckString. First name.
lastNamecheckString. Last name.
emailcheckString. Email.
labNamecheckString. Lab name.
labAddresscheckString. Lab address.
RDML::rdmlBaseType -> experimenterType
new()
experimenterType$new( id, firstName, lastName, email = NULL, labName = NULL, labAddress = NULL )
clone()
The objects of this class are cloneable with this method.
experimenterType$clone(deep = FALSE)
deepWhether to make a deep clone.
A qPCR experiment. It may contain several runs (runType). Inherits: rdmlBaseType.
An R6Class generator object.
experimentType$new(id, description = NULL, documentation = NULL, run = NULL)
@section Fields:
iddescriptiondocumentationlist of idReferencesType.
runlist of runType.
AsDataFrame(dp.type = "adp",
long.table = FALSE)Represents amplification (dp.type = "adp") or
melting (dp.type = "mdp") data points as data.frame.
long.table = TRUE means that fluorescence data for all runs and
reacts will be at one collumn.
RDML::rdmlBaseType -> experimentType
new()
experimentType$new(id, description = NULL, documentation = NULL, run = NULL)
GetFData()
experimentType$GetFData(dp.type = "adp", long.table = FALSE)
clone()
The objects of this class are cloneable with this method.
experimentType$clone(deep = FALSE)
deepWhether to make a deep clone.
RDML$GetFData() wrapperRead more at RDML.GetFData
GetFData(obj, ...)GetFData(obj, ...)
obj |
|
... |
|
Details of the temperature gradient across the PCR block. Inherits: baseTemperatureType.
An R6Class generator object.
gradientType$new(highTemperature, lowTemperature, ...)
highTemperaturecheckNumber. The highest temperature of the gradient in degrees Celsius.
lowTemperaturecheckNumber. The lowest temperature of the gradient in degrees Celsius.
...Params of parent class baseTemperatureType.
RDML::rdmlBaseType -> RDML::baseTemperatureType -> gradientType
new()
gradientType$new(highTemperature, lowTemperature, ...)
clone()
The objects of this class are cloneable with this method.
gradientType$clone(deep = FALSE)
deepWhether to make a deep clone.
Contains id of another RDML object. Inherits: idType.
An R6Class generator object.
idReferencesType$new(id)
idcheckString. Identificator.
RDML::rdmlBaseType -> RDML::idType -> idReferencesType
clone()
The objects of this class are cloneable with this method.
idReferencesType$clone(deep = FALSE)
deepWhether to make a deep clone.
Contains identificator for varius RDML types. Inherits: rdmlBaseType.
An R6Class generator object.
idType$new(id)
@section Fields:
idcheckString. Identificator.
RDML::rdmlBaseType -> idType
new()
idType$new(id)
.asXMLnodes()
idType$.asXMLnodes(node.name)
clone()
The objects of this class are cloneable with this method.
idType$clone(deep = FALSE)
deepWhether to make a deep clone.
Label used for pcrFormatType. Can take values:
Inherits: enumType.
An R6Class generator object.
labelFormatType$new(value)
@section Fields:
valueRDML::rdmlBaseType -> RDML::enumType -> labelFormatType
clone()
The objects of this class are cloneable with this method.
labelFormatType$clone(deep = FALSE)
deepWhether to make a deep clone.
This step waits for the user to open the lid and continues afterwards. It allows to stop the program and to wait for the user to add for example enzymes and continue the program afterwards. The temperature of the previous step is maintained. Inherits: rdmlBaseType.
An R6Class generator object.
lidOpenType$new()
RDML::rdmlBaseType -> lidOpenType
new()
lidOpenType$new()
clone()
The objects of this class are cloneable with this method.
lidOpenType$clone(deep = FALSE)
deepWhether to make a deep clone.
This step allows to form a loop or to exclude some steps. It allows to jump to a certain "goto" step for "repeat" times. If the "goto" step is outside of the loop range, it must have "repeat" value "0". Inherits: rdmlBaseType.
An R6Class generator object.
loopType$new(goto, repeat.n)
gotoassertCount. The step to go to to form the loop.
repeat.nassertCount. Determines how many times the loop is repeated. The first run through the loop is counted as 0, the last loop is "repeat" - 1.
RDML::rdmlBaseType -> loopType
new()
loopType$new(goto, repeat.n)
clone()
The objects of this class are cloneable with this method.
loopType$clone(deep = FALSE)
deepWhether to make a deep clone.
Contains matrix of melting data points (single data points measured
during amplification).
An R6Class generator object.
Columns:
(temperature in degrees Celsius at the time of measurement. Every point must have unique value.
fluorescence intensity measured without any correction (including baselining).
Inherits: rdmlBaseType.
mdpsType$new(fpoints)
@section Fields:
fpointsassertMatrix. Matrix with amplification data points.
RDML::rdmlBaseType -> mdpsType
new()
mdpsType$new(fpoints)
.asXMLnodes()
mdpsType$.asXMLnodes(node.name)
clone()
The objects of this class are cloneable with this method.
mdpsType$clone(deep = FALSE)
deepWhether to make a deep clone.
Can take values:
Inherits: enumType.
An R6Class generator object.
measureType$new(value)
@section Fields:
valueRDML::rdmlBaseType -> RDML::enumType -> measureType
clone()
The objects of this class are cloneable with this method.
measureType$clone(deep = FALSE)
deepWhether to make a deep clone.
RDML objectsMerges list of RDML objects. The first object in the list becomes base object.
If experiments or runs have same name they will be combined.
Reacts with same id, experiment and run overwrite each other!
MergeRDMLs(to.merge)MergeRDMLs(to.merge)
to.merge |
|
## Not run: PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "lc96_bACTXY.rdml", sep ="") lc96 <- RDML$new(filename) filename <- paste(PATH, "/extdata/", "stepone_std.rdml", sep ="") stepone <- RDML$new(filename) merged <- MergeRDMLs(list(lc96,stepone)) merged$AsDendrogram() ## End(Not run)## Not run: PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "lc96_bACTXY.rdml", sep ="") lc96 <- RDML$new(filename) filename <- paste(PATH, "/extdata/", "stepone_std.rdml", sep ="") stepone <- RDML$new(filename) merged <- MergeRDMLs(list(lc96,stepone)) merged$AsDendrogram() ## End(Not run)
RDML class objectThis function has been designed to import data from RDML v1.1 and v1.2 format
files or from xls file generated by Applied Biosystems 7500. To
import from xls this file have to contain Sample Setup and
Multicomponent Data sheets!
filename |
|
show.progress |
|
conditions.sep |
separator for condition defined at sample name |
format |
|
File format options:
Tries to detect format by
extension. .xlsx – excel, .xls – abi,
.csv – csv, other – rdml
Reads .xls
files generated by ABI 7500 v.2. To create such files use File>Export;
check 'Sample Setup' and 'Multicomponent Data'; select 'One File'
.xls or .xslx file with sheets 'description',
'adp', 'mdp'. See example file table.xlsx
.csv file
with first column 'cyc' or 'tmp' and fluorescence data in other columns
.rdml or .lc96p files
Although the format RDML claimed as data exchange format, the specific implementation of the format at devices from real manufacturers differ significantly. Currently this function is checked against RDML data from devices: Bio-Rad CFX96, Roche LightCycler 96 and Applied Biosystems StepOne.
Konstantin A. Blagodatskikh <[email protected]>, Stefan Roediger <[email protected]>, Michal Burdukiewicz <[email protected]>
## Not run: ## Import from RDML file PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "lc96_bACTXY.rdml", sep ="") lc96 <- RDML$new(filename) ## Some kind of overview for lc96 lc96$AsTable(name.pattern = sample[[react$sample$id]]$description) lc96$AsDendrogram() ## End(Not run)## Not run: ## Import from RDML file PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "lc96_bACTXY.rdml", sep ="") lc96 <- RDML$new(filename) ## Some kind of overview for lc96 lc96$AsTable(name.pattern = sample[[react$sample$id]]$description) lc96$AsDendrogram() ## End(Not run)
Type of nucleic acid used as a template in the experiment. May have following values:
An R6Class generator object.
Inherits: enumType.
nucleotideType$new(value)
@section Fields:
valuecheckString. Value.
RDML::rdmlBaseType -> RDML::enumType -> nucleotideType
clone()
The objects of this class are cloneable with this method.
nucleotideType$clone(deep = FALSE)
deepWhether to make a deep clone.
Inherits: rdmlBaseType.
An R6Class generator object.
oligoType$new(threePrimeTag = NULL, fivePrimeTag = NULL, sequence)
@section Fields:
threePrimeTagcheckString. Description of three prime modification (if present).
fivePrimeTagcheckString. Description of five prime modification (if present).
sequenceRDML::rdmlBaseType -> oligoType
new()
oligoType$new(threePrimeTag = NULL, fivePrimeTag = NULL, sequence)
clone()
The objects of this class are cloneable with this method.
oligoType$clone(deep = FALSE)
deepWhether to make a deep clone.
This step allows to pause at a certain temperature. It is typically the last step in an amplification protocol. Inherits: rdmlBaseType.
An R6Class generator object.
pauseType$new(temperature)
temperaturecheckNumber. The temperature in degrees Celsius maintained during the pause.
RDML::rdmlBaseType -> pauseType
new()
pauseType$new(temperature)
clone()
The objects of this class are cloneable with this method.
pauseType$clone(deep = FALSE)
deepWhether to make a deep clone.
The display format of the PCR, analogous to the the qPCR instrument run format. Inherits: rdmlBaseType.
An R6Class generator object.
Rotor formats always have 1 column; rows correspond to the number of places in the rotor. Values for common formats are:
| Format | rows | columns | rowLabel | columnLabel |
| single-well | 1 | 1 | 123 | 123 |
| 48-well plate | 6 | 8 | ABC | 123 |
| 96-well plate | 8 | 12 | ABC | 123 |
| 384-well plate | 16 | 24 | ABC | 123 |
| 1536-well plate | 32 | 48 | ABC | 123 |
| 3072-well array | 32 | 96 | A1a1 | A1a1 |
| 5184-well chip | 72 | 72 | ABC | 123 |
| 32-well rotor | 32 | 1 | 123 | 123 |
| 72-well rotor | 72 | 1 | 123 | 123 |
| 100-well rotor | 100 | 1 | 123 | 123 |
| free format | -1 | 1 | 123 | 123 |
If rows field has value -1, the function will not try to reconstruct a plate and just display all run data in a single column. If the columns field has value 1 then the function will not display a column label.
pcrFormatType$new(rows, columns, rowLabel, columnLabel)
@section Fields:
rowscolumnsrowLabelcolumnLabelRDML::rdmlBaseType -> pcrFormatType
new()
pcrFormatType$new(rows, columns, rowLabel, columnLabel)
clone()
The objects of this class are cloneable with this method.
pcrFormatType$clone(deep = FALSE)
deepWhether to make a deep clone.
The primers used in the reverse transcription. Can take values:
An R6Class generator object.
Inherits: enumType.
primingMethodType$new(value)
@section Fields:
valuecheckString. Value.
RDML::rdmlBaseType -> RDML::enumType -> primingMethodType
clone()
The objects of this class are cloneable with this method.
primingMethodType$clone(deep = FALSE)
deepWhether to make a deep clone.
A quantity is always defined by its value and its unit. Inherits: rdmlBaseType.
An R6Class generator object.
quantityType$new(value, unit)
@section Fields:
valuecheckNumber. Value.
unitquantityUnitType. Unit.
RDML::rdmlBaseType -> quantityType
new()
quantityType$new(value, unit)
clone()
The objects of this class are cloneable with this method.
quantityType$clone(deep = FALSE)
deepWhether to make a deep clone.
The unit the quantity. Can take values:
copies per microliter
fold change
dilution (10 would mean 1:10 dilution)
nanomol per microliter
nanogram per microliter
other unit (must be linear, no exponents or logarithms allowed)
An R6Class generator object.
Inherits: enumType.
quantityUnitType$new(value)
@section Fields:
valuecheckString. Value.
RDML::rdmlBaseType -> RDML::enumType -> quantityUnitType
clone()
The objects of this class are cloneable with this method.
quantityUnitType$clone(deep = FALSE)
deepWhether to make a deep clone.
RDML – contains methods to read and overview fluorescence
data from RDML v1.1 and v1.2 format filesThis class is a container for RDML format data (Lefever et al.
2009). The data may be further transformed to the appropriate format of the
qpcR (Ritz et al. 2008, Spiess et al. 2008) and chipPCR
(Roediger et al. 2015) packages (see RDML.new for import details).
Real-time PCR Data Markup Language (RDML) is the recommended file format
element in the Minimum Information for Publication of Quantitative Real-Time
PCR Experiments (MIQE) guidelines (Bustin et al. 2009). The inner structure of
imported data faithfully reflects the structure of RDML file v1.2. All data with
the exception for fluorescence values can be represented as data.frame by
method AsTable. Such possibility of data representation streamlines
sample filtering (by targets, types, etc.) and serves as request for GetFData
method, which extracts fluorescence data for specified samples.
An R6Class generator object.
Type, structure of data and description of fields can be viewed at RDML v1.2 file description. Names of fields are first level of XML tree.
creates a new instance of RDML class object (see RDML.new)
represent RDML data as data.frame (see RDML.AsTable)
gets fluorescence data (see RDML.GetFData)
sets fluorescence data (see RDML.SetFData)
merges two RDML to one (see MergeRDMLs)
represents structure of RDML object as dendrogram(see
RDML.AsDendrogram)
RDML::rdmlBaseType -> RDML
AsDendrogram()
RDML$AsDendrogram(plot.dendrogram = TRUE)
AsTable()
RDML$AsTable(
.default = list(exp.id = experiment$id$id, run.id = run$id$id, react.id = react$id$id,
position = react$position, sample = react$sample$id, target = data$tar$id,
target.dyeId = target[[data$tar$id]]$dyeId$id, sample.type =
sample[[react$sample$id]]$type$value, adp = !is.null(data$adp), mdp =
!is.null(data$mdp)),
name.pattern = paste(react$position, react$sample$id,
private$.sample[[react$sample$id]]$type$value, data$tar$id, sep = "_"),
add.columns = list(),
treat.null.as.na = FALSE,
...
)GetFData()
RDML$GetFData(request, dp.type = "adp", long.table = FALSE)
AsXML()
RDML$AsXML(file.name)
SetFData()
RDML$SetFData(fdata, description, fdata.type = "adp")
new()
RDML$new( filename, show.progress = TRUE, conditions.sep = NULL, cluster = NULL, format = "auto" )
clone()
The objects of this class are cloneable with this method.
RDML$clone(deep = FALSE)
deepWhether to make a deep clone.
Konstantin A. Blagodatskikh <[email protected]>, Stefan Roediger <[email protected]>, Michal Burdukiewicz <[email protected]>
RDML format http://www.rdml.org/ R6 package
http://cran.r-project.org/web/packages/R6/index.html
qpcR package http://cran.r-project.org/web/packages/qpcR/index.html
chipPCR package:
http://cran.r-project.org/web/packages/chipPCR/index.html
Roediger S, Burdukiewicz M and Schierack P (2015). chipPCR: an R Package to Pre-Process Raw Data of Amplification Curves. Bioinformatics first published online April 24, 2015 doi:10.1093/bioinformatics/btv205
Ritz, C., Spiess, A.-N., 2008. qpcR: an R package for sigmoidal model selection in quantitative real-time polymerase chain reaction analysis. Bioinformatics 24, 1549–1551. doi:10.1093/bioinformatics/btn227
Spiess, A.-N., Feig, C., Ritz, C., 2008. Highly accurate sigmoidal fitting of real-time PCR data by introducing a parameter for asymmetry. BMC Bioinformatics 9, 221. doi:10.1186/1471-2105-9-221
Bustin, S.A., Benes, V., Garson, J.A., Hellemans, J., Huggett, J., Kubista, M., Mueller, R., Nolan, T., Pfaffl, M.W., Shipley, G.L., Vandesompele, J., Wittwer, C.T., 2009. The MIQE guidelines: minimum information for publication of quantitative real-time PCR experiments. Clin. Chem. 55, 611–622. doi:10.1373/clinchem.2008.112797
Lefever, S., Hellemans, J., Pattyn, F., Przybylski, D.R., Taylor, C., Geurts, R., Untergasser, A., Vandesompele, J., RDML consortium, 2009. RDML: structured language and reporting guidelines for real-time quantitative PCR data. Nucleic Acids Res. 37, 2065–2069. doi:10.1093/nar/gkp056
## EXAMPLE 1: ## internal dataset lc96_bACTXY.rdml (in 'data' directory) ## generated by Roche LightCycler 96. Contains qPCR data ## with four targets and two types. ## Import with default settings. PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "lc96_bACTXY.rdml", sep ="") lc96 <- RDML$new(filename) tab <- lc96$AsTable(name.pattern = paste(sample[[react$sample$id]]$description, react$id$id), quantity = sample[[react$sample$id]]$quantity$value) ## Show dyes names unique(tab$target.dyeId) ## Show types of the samples for dye 'FAM' library(dplyr) unique(filter(tab, target.dyeId == "FAM")$sample.type) ## Show template quantities for dye 'FAM' type 'std'#' ## Not run: COPIES <- filter(tab, target.dyeId == "FAM", sample.type == "std")$quantity ## Define calibration curves (type of the samples - 'std'). ## No replicates. library(qpcR) CAL <- modlist(lc96$GetFData(filter(tab, target.dyeId == "FAM", sample.type == "std")), baseline="lin", basecyc=8:15) ## Define samples to predict (first two samples with the type - 'unkn'). PRED <- modlist(lc96$GetFData(filter(tab, target.dyeId == "FAM", sample.type == "unkn")), baseline="lin", basecyc=8:15) ## Conduct quantification. calib(refcurve = CAL, predcurve = PRED, thresh = "cpD2", dil = COPIES) ## End(Not run) ## Not run: ## EXAMPLE 2: ## internal dataset lc96_bACTXY.rdml (in 'data' directory) ## generated by Roche LightCycler 96. Contains qPCR data ## with four targets and two types. ## Import with default settings. library(chipPCR) PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "lc96_bACTXY.rdml", sep ="") lc96 <- RDML$new(filename) tab <- lc96$AsTable(name.pattern = paste(sample[[react$sample$id]]$description, react$id$id), quantity = sample[[react$sample$id]]$quantity$value) ## Show targets names unique(tab$target) ## Fetch cycle dependent fluorescence for HEX chanel tmp <- lc96$GetFData(filter(tab, target == "bACT", sample.type == "std")) ## Fetch vector of dillutions dilution <- filter(tab, target.dyeId == "FAM", sample.type == "std")$quantity ## Use plotCurves function from the chipPCR package to ## get an overview of the amplification curves tmp <- as.data.frame(tmp) plotCurves(tmp[,1], tmp[,-1]) par(mfrow = c(1,1)) ## Use inder function from the chipPCR package to ## calculate the Cq (second derivative maximum, SDM) SDMout <- sapply(2L:ncol(tmp), function(i) { SDM <- summary(inder(tmp[, 1], tmp[, i]), print = FALSE)[2] }) ## Use the effcalc function from the chipPCR package and ## plot the results for the calculation of the amplification ## efficiency analysis. plot(effcalc(dilution, SDMout), CI = TRUE) ## End(Not run) ## Not run: ## EXAMPLE 3: ## internal dataset BioRad_qPCR_melt.rdml (in 'data' directory) ## generated by Bio-Rad CFX96. Contains qPCR and melting data. ## Import with custom name pattern. PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "BioRad_qPCR_melt.rdml", sep ="") cfx96 <- RDML$new(filename) ## Use plotCurves function from the chipPCR package to ## get an overview of the amplification curves library(chipPCR) ## Extract all qPCR data tab <- cfx96$AsTable() cfx96.qPCR <- as.data.frame(cfx96$GetFData(tab)) plotCurves(cfx96.qPCR[,1], cfx96.qPCR[,-1], type = "l") ## Extract all melting data cfx96.melt <- cfx96$GetFData(tab, dp.type = "mdp") ## Show some generated names for samples. colnames(cfx96.melt)[2L:5] ## Select columns that contain ## samples with dye 'EvaGreen' and have type 'pos' ## using filtering by names. cols <- cfx96$GetFData(filter(tab, grepl("pos_EvaGreen$", fdata.name)), dp.type = "mdp") ## Conduct melting curve analysis. library(qpcR) invisible(meltcurve(cols, fluos = 2:ncol(cols), temps = rep(1, ncol(cols) - 1))) ## End(Not run)## EXAMPLE 1: ## internal dataset lc96_bACTXY.rdml (in 'data' directory) ## generated by Roche LightCycler 96. Contains qPCR data ## with four targets and two types. ## Import with default settings. PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "lc96_bACTXY.rdml", sep ="") lc96 <- RDML$new(filename) tab <- lc96$AsTable(name.pattern = paste(sample[[react$sample$id]]$description, react$id$id), quantity = sample[[react$sample$id]]$quantity$value) ## Show dyes names unique(tab$target.dyeId) ## Show types of the samples for dye 'FAM' library(dplyr) unique(filter(tab, target.dyeId == "FAM")$sample.type) ## Show template quantities for dye 'FAM' type 'std'#' ## Not run: COPIES <- filter(tab, target.dyeId == "FAM", sample.type == "std")$quantity ## Define calibration curves (type of the samples - 'std'). ## No replicates. library(qpcR) CAL <- modlist(lc96$GetFData(filter(tab, target.dyeId == "FAM", sample.type == "std")), baseline="lin", basecyc=8:15) ## Define samples to predict (first two samples with the type - 'unkn'). PRED <- modlist(lc96$GetFData(filter(tab, target.dyeId == "FAM", sample.type == "unkn")), baseline="lin", basecyc=8:15) ## Conduct quantification. calib(refcurve = CAL, predcurve = PRED, thresh = "cpD2", dil = COPIES) ## End(Not run) ## Not run: ## EXAMPLE 2: ## internal dataset lc96_bACTXY.rdml (in 'data' directory) ## generated by Roche LightCycler 96. Contains qPCR data ## with four targets and two types. ## Import with default settings. library(chipPCR) PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "lc96_bACTXY.rdml", sep ="") lc96 <- RDML$new(filename) tab <- lc96$AsTable(name.pattern = paste(sample[[react$sample$id]]$description, react$id$id), quantity = sample[[react$sample$id]]$quantity$value) ## Show targets names unique(tab$target) ## Fetch cycle dependent fluorescence for HEX chanel tmp <- lc96$GetFData(filter(tab, target == "bACT", sample.type == "std")) ## Fetch vector of dillutions dilution <- filter(tab, target.dyeId == "FAM", sample.type == "std")$quantity ## Use plotCurves function from the chipPCR package to ## get an overview of the amplification curves tmp <- as.data.frame(tmp) plotCurves(tmp[,1], tmp[,-1]) par(mfrow = c(1,1)) ## Use inder function from the chipPCR package to ## calculate the Cq (second derivative maximum, SDM) SDMout <- sapply(2L:ncol(tmp), function(i) { SDM <- summary(inder(tmp[, 1], tmp[, i]), print = FALSE)[2] }) ## Use the effcalc function from the chipPCR package and ## plot the results for the calculation of the amplification ## efficiency analysis. plot(effcalc(dilution, SDMout), CI = TRUE) ## End(Not run) ## Not run: ## EXAMPLE 3: ## internal dataset BioRad_qPCR_melt.rdml (in 'data' directory) ## generated by Bio-Rad CFX96. Contains qPCR and melting data. ## Import with custom name pattern. PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "BioRad_qPCR_melt.rdml", sep ="") cfx96 <- RDML$new(filename) ## Use plotCurves function from the chipPCR package to ## get an overview of the amplification curves library(chipPCR) ## Extract all qPCR data tab <- cfx96$AsTable() cfx96.qPCR <- as.data.frame(cfx96$GetFData(tab)) plotCurves(cfx96.qPCR[,1], cfx96.qPCR[,-1], type = "l") ## Extract all melting data cfx96.melt <- cfx96$GetFData(tab, dp.type = "mdp") ## Show some generated names for samples. colnames(cfx96.melt)[2L:5] ## Select columns that contain ## samples with dye 'EvaGreen' and have type 'pos' ## using filtering by names. cols <- cfx96$GetFData(filter(tab, grepl("pos_EvaGreen$", fdata.name)), dp.type = "mdp") ## Conduct melting curve analysis. library(qpcR) invisible(meltcurve(cols, fluos = 2:ncol(cols), temps = rep(1, ncol(cols) - 1))) ## End(Not run)
RDML file as dendrogramPlots and/or returns the structure of RDML file as
dendrogram (tree-like structure.)
plot.dendrogram |
plots dendrogram if |
dendrogram object
Konstantin A. Blagodatskikh <[email protected]>, Stefan Roediger <[email protected]>, Michal Burdukiewicz <[email protected]>
## Not run: PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "BioRad_qPCR_melt.rdml", sep ="") cfx96 <- RDML$new(filename) #plot dendrogram cfx96$AsDendrogram() #assign dendrogram to the object dendr <- cfx96$AsDendrogram(plot.dendrogram = FALSE) ## End(Not run)## Not run: PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "BioRad_qPCR_melt.rdml", sep ="") cfx96 <- RDML$new(filename) #plot dendrogram cfx96$AsDendrogram() #assign dendrogram to the object dendr <- cfx96$AsDendrogram(plot.dendrogram = FALSE) ## End(Not run)
RDML object as data.frame
Formats particular fields of RDML object as data.frames,
filters or passes them to RDML.GetFData and RDML.SetFData
functions.
.default |
|
name.pattern |
expression to form |
add.columns |
|
treat.null.as.na |
if value is |
... |
additional columns |
By default input this function forms data.frame with following columns:
experiment$id
run$id
react$id
react$position
react$sample
data$tar$id
target[[data$id]]$dyeId
sample[[react$sample]]$type
You can overload default
columns list by parameter .default but note that columns
exp.id, run.id, react.id, target
are necessary for usage
AsTable output as
input for GetFData and SetFData.
Additional columns can be
introduced by specifying them at input parameter ... (see Examples).
All default and additional columns accession expressions must be named.
Experiment, run, react and data to which belongs each fluorescence data vector
can be accessed by experiment, run, react, data (see Examples).
Result table does not contain data from experiments with ids starting with '.'!
Konstantin A. Blagodatskikh <[email protected]>, Stefan Roediger <[email protected]>, Michal Burdukiewicz <[email protected]>
## Not run: ## internal dataset stepone_std.rdml (in 'data' directory) ## generated by Applied Biosystems Step-One. Contains qPCR data. library(chipPCR) PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "stepone_std.rdml", sep ="") stepone <- RDML$new(filename) ## Mark fluorescense data which Cq > 30 and add quantities to ## AsTable output. ## Names for fluorescense data will contain sample name and react ## positions tab <- stepone$AsTable( name.pattern = paste(react$sample$id, react$position), add.columns = list(cq30 = if(data$cq >= 30) ">=30" else "<30", quantity = sample[[react$sample$id]]$quantity$value) ) ## Show cq30 and quantities tab[, c("cq30", "quantity")] ## Get fluorescence values for 'std' type samples ## in format ready for ggplot function library(dplyr) fdata <- stepone$GetFData( filter(tab, sample.type == "std"), long.table = TRUE) ## Plot fdata with colour by cq30 and shape by quantity library(ggplot2) ggplot(fdata, aes(x = cyc, y = fluor, group = fdata.name, colour = cq30, shape = as.factor(quantity))) + geom_line() + geom_point() ## End(Not run)## Not run: ## internal dataset stepone_std.rdml (in 'data' directory) ## generated by Applied Biosystems Step-One. Contains qPCR data. library(chipPCR) PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "stepone_std.rdml", sep ="") stepone <- RDML$new(filename) ## Mark fluorescense data which Cq > 30 and add quantities to ## AsTable output. ## Names for fluorescense data will contain sample name and react ## positions tab <- stepone$AsTable( name.pattern = paste(react$sample$id, react$position), add.columns = list(cq30 = if(data$cq >= 30) ">=30" else "<30", quantity = sample[[react$sample$id]]$quantity$value) ) ## Show cq30 and quantities tab[, c("cq30", "quantity")] ## Get fluorescence values for 'std' type samples ## in format ready for ggplot function library(dplyr) fdata <- stepone$GetFData( filter(tab, sample.type == "std"), long.table = TRUE) ## Plot fdata with colour by cq30 and shape by quantity library(ggplot2) ggplot(fdata, aes(x = cyc, y = fluor, group = fdata.name, colour = cq30, shape = as.factor(quantity))) + geom_line() + geom_point() ## End(Not run)
RDML objectGets fluorescence data vectors from RDML object for specified method
of experiment.
request |
Output from AsTable method(RDML.AsTable) |
dp.type |
Type of fluorescence data (i.e. 'adp' for qPCR or 'mdp' for melting) |
long.table |
Output table is ready for ggplot (See RDML.AsTable for example) |
matrix which contains selected fluorescence data and
additional information fromm request if long.table = TRUE.
Konstantin A. Blagodatskikh <[email protected]>, Stefan Roediger <[email protected]>, Michal Burdukiewicz <[email protected]>
## Not run: ## internal dataset BioRad_qPCR_melt.rdml (in 'data' directory) ## generated by Bio-Rad CFX96. Contains qPCR and melting data. ## Import without splitting by targets/types and with ## custom name pattern. PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "BioRad_qPCR_melt.rdml", sep ="") cfx96 <- RDML$new(filename) ## Select melting fluorescence data with sample.type 'unkn'. library(dplyr) tab <- cfx96$AsTable() fdata <- cfx96$GetFData(filter(tab, sample.type == "unkn"), dp.type = "adp") ## Show names for obtained fdata colnames(fdata) ## End(Not run)## Not run: ## internal dataset BioRad_qPCR_melt.rdml (in 'data' directory) ## generated by Bio-Rad CFX96. Contains qPCR and melting data. ## Import without splitting by targets/types and with ## custom name pattern. PATH <- path.package("RDML") filename <- paste(PATH, "/extdata/", "BioRad_qPCR_melt.rdml", sep ="") cfx96 <- RDML$new(filename) ## Select melting fluorescence data with sample.type 'unkn'. library(dplyr) tab <- cfx96$AsTable() fdata <- cfx96$GetFData(filter(tab, sample.type == "unkn"), dp.type = "adp") ## Show names for obtained fdata colnames(fdata) ## End(Not run)
RDML objectSets fluorescence data vectors to RDML object for specified method
of experiment.
data |
|
description |
output from |
fdata.type |
'adp' for qPCR, 'mdp' for melting data. |
## Not run: PATH <- path.package("RDML") filename <- paste0(PATH, "/extdata/", "stepone_std.rdml") cfx96 <- RDML$new(filename) ## Use plotCurves function from the chipPCR package to ## get an overview of the amplification curves library(chipPCR) ## Extract all qPCR data tab <- cfx96$AsTable() tab2 <- tab tab2$run.id <- "cpp" cfx96.qPCR <- as.data.frame(cfx96$GetFData(tab)) cpp <- cbind(cyc = cfx96.qPCR[, 1], apply(cfx96.qPCR[, -1], 2, function(y) CPP(x = cfx96.qPCR[, 1], y = y)$y.norm)) cfx96$SetFData(cpp, tab2) library(ggplot2) library(gridExtra) cfx96.gg <- cfx96$GetFData(tab, long.table = TRUE) cpp.gg <- cfx96$GetFData(tab2, long.table = TRUE) plot1 <- ggplot(cfx96.gg, aes(x = cyc, y = fluor, group=fdata.name)) + geom_line() + ggtitle("Raw data") plot2 <- ggplot(cpp.gg, aes(x = cyc, y = fluor, group=fdata.name)) + geom_line() + ggtitle("CPP processed data") grid.arrange(plot1, plot2, nrow=2) ## End(Not run)## Not run: PATH <- path.package("RDML") filename <- paste0(PATH, "/extdata/", "stepone_std.rdml") cfx96 <- RDML$new(filename) ## Use plotCurves function from the chipPCR package to ## get an overview of the amplification curves library(chipPCR) ## Extract all qPCR data tab <- cfx96$AsTable() tab2 <- tab tab2$run.id <- "cpp" cfx96.qPCR <- as.data.frame(cfx96$GetFData(tab)) cpp <- cbind(cyc = cfx96.qPCR[, 1], apply(cfx96.qPCR[, -1], 2, function(y) CPP(x = cfx96.qPCR[, 1], y = y)$y.norm)) cfx96$SetFData(cpp, tab2) library(ggplot2) library(gridExtra) cfx96.gg <- cfx96$GetFData(tab, long.table = TRUE) cpp.gg <- cfx96$GetFData(tab2, long.table = TRUE) plot1 <- ggplot(cfx96.gg, aes(x = cyc, y = fluor, group=fdata.name)) + geom_line() + ggtitle("Raw data") plot2 <- ggplot(cpp.gg, aes(x = cyc, y = fluor, group=fdata.name)) + geom_line() + ggtitle("CPP processed data") grid.arrange(plot1, plot2, nrow=2) ## End(Not run)
Most classes from RDML package inherit this class. It is designed for internal usage and should not be directly accessed.
An R6Class generator object.
rdmlBaseType$new()
.asXMLnodes(node.name)Represents
object as XML nodes. Should not be called directly. node.name –
name of the root node for the generated XML
tree.
print(...)prints object
.asXMLnodes()
rdmlBaseType$.asXMLnodes(node.name)
copy()
rdmlBaseType$copy()
print()
rdmlBaseType$print(...)
clone()
The objects of this class are cloneable with this method.
rdmlBaseType$clone(deep = FALSE)
deepWhether to make a deep clone.
Launches graphical user interface that can edit RDML metadata and show qPCR or melting curves.
rdmlEdit()rdmlEdit()
This element can be used to assign a publisher and id to the RDML file.
Inherits: rdmlBaseType.
An R6Class generator object.
rdmlIdType$new(publisher, serialNumber, MD5Hash = NULL)
publishercheckString. RDML file publisher.
serialNumbercheckString. Serial number.
MD5HashcheckString. An MD5Hash calculated over the complete file after removing all rdmlIDTypes and all whitespaces between elements.
RDML::rdmlBaseType -> rdmlIdType
new()
rdmlIdType$new(publisher, serialNumber, MD5Hash = NULL)
clone()
The objects of this class are cloneable with this method.
rdmlIdType$clone(deep = FALSE)
deepWhether to make a deep clone.
Contains identificator for reactType. Inherits: rdmlBaseType.
An R6Class generator object.
reactIdType$new(id)
@section Fields:
idcheckCount. Identificator.
RDML::rdmlBaseType -> RDML::idType -> reactIdType
new()
reactIdType$new(id)
clone()
The objects of this class are cloneable with this method.
reactIdType$clone(deep = FALSE)
deepWhether to make a deep clone.
A reaction is an independent chemical reaction corresponding for example to a well in a 96 well plate, a capillary in a rotor, a through-hole on an array, etc. Inherits: rdmlBaseType.
An R6Class generator object.
The ID of this reaction
Schemas :
rotor : assign IDs according to the position of the sample on the rotor (1 for the 1st sample, 2 for the 2nd, ...)
plate (96/384/1536 well) : the IDs are assigned in a row-first/column-second manner. For each row, the samples are numbered according to the increasing column number. At the end of a row, the numbering starts at the first column of the next row. An example for this type of plate can be found below :
| 1 | 2 | 3 | ... | |
| A | 1 | 2 | 3 | |
| B | 13 | 14 | ||
| ... |
or
| 1 | 2 | 3 | ... | |
| 1 | 1 | 2 | 3 | |
| 2 | 13 | 14 | ||
| ... |
multi-array plate (BioTrove) : the IDs are assigned in a row-first/column-second manner, ignoring the organisation of sub-arrays. For each row, the samples are numbered according to the increasing column number. At the end of a row, the the next row. An example for this type of plate can be found below : todo...
reactType$new(id, sample, data = NULL, pcrFormat = pcrFormatType$new(8, 12, labelFormatType$new("123"), labelFormatType$new("ABC")))
@section Fields:
idreactIdType. See 'Details'.
sampleidReferencesType. SampleID - A reference to a sample.
datalist of dataType.
positionHuman readable form of the react id (i.e. '13' -> 'B1')..
AsDataFrame(dp.type =
"adp")Represents amplification (dp.type = "adp") or melting
(dp.type = "mdp") data points of all targets as one
data.frame
.recalcPosition(pcrformat)Converts react
id to the human readable form (i.e. '13' -> 'B1'). This converted value can be
accessed by position field. pcrFormat is
pcrFormatType. Currently, only 'ABC' and '123' are supported as
labels. For '123' '123' the Position will look like 'r01c01', for
'ABC' '123' it will be 'A01' and for '123' 'ABC' it will be 01A. 'ABC' 'ABC'
is not currently supported. Note that 'ABC' will result in loss of
information if the experiment contains more than 26 rows!
RDML::rdmlBaseType -> reactType
new()
reactType$new(
id,
sample,
data = NULL,
pcrFormat = pcrFormatType$new(8, 12, labelFormatType$new("ABC"),
labelFormatType$new("123"))
)GetFData()
reactType$GetFData(dp.type = "adp", long.table = FALSE)
.recalcPosition()
reactType$.recalcPosition(pcrFormat)
clone()
The objects of this class are cloneable with this method.
reactType$clone(deep = FALSE)
deepWhether to make a deep clone.
A run is a set of reactions performed in one "run", for example one plate, one rotor, one array, one chip. Inherits: rdmlBaseType.
An R6Class generator object.
runType$new(id, description = NULL, documentation = NULL, experimenter = NULL, instrument = NULL, dataCollectionSoftware = NULL, backgroundDeterminationMethod = NULL, cqDetectionMethod = NULL, thermalCyclingConditions = NULL, pcrFormat, runDate = NULL, react = NULL)
iddescriptiondocumentationlist of idReferencesType.
experimenterlist of idReferencesType.
instrumentcheckString. Description of the instrument used to aquire the data.
dataCollectionSoftwaredataCollectionSoftwareType. Description of the software used to analyze/collect the data.
backgroundDeterminationMethodcheckString. Description of method used to determine the background.
cqDetectionMethodcqDetectionMethodType. Description of method used to calculate the quantification cycle.
thermalCyclingConditionsidReferencesType. The program used to aquire the data.
pcrFormatrunDateadpsType. Time stamp of data acquisition.
reactlist of adpsType.
AsDataFrame(dp.type = "adp")Represents amplification
(dp.type = "adp") or melting (dp.type = "mdp") data
points as data.frame
RDML::rdmlBaseType -> runType
new()
runType$new( id, description = NULL, documentation = NULL, experimenter = NULL, instrument = NULL, dataCollectionSoftware = NULL, backgroundDeterminationMethod = NULL, cqDetectionMethod = NULL, thermalCyclingConditions = NULL, pcrFormat, runDate = NULL, react = NULL )
GetFData()
runType$GetFData(dp.type = "adp", long.table = FALSE)
UpdateReactsPosition()
runType$UpdateReactsPosition()
clone()
The objects of this class are cloneable with this method.
runType$clone(deep = FALSE)
deepWhether to make a deep clone.
A sample is a template solution with defined concentation. Since dilutions of the same material differ in concentration, they are considered different samples. A technical replicate samples should contain the same name (reactions are performed on the same material), and biological replicates should contain different names (the template derived from the different biological replicates is are divergent). Serial dilutions in a standard curve must have different names (preferably stating their dillution). Inherits: rdmlBaseType.
An R6Class generator object.
sampleType$new(id, description = NULL,
documentation = NULL, xRef = NULL, annotation = NULL, type =
sampleTypeType$new("unkn"), interRunCalibrator = FALSE, quantity = NULL,
calibratorSample = FALSE, cdnaSynthesisMethod = NULL, templateQuantity =
NULL)
@section Fields:
ididType. Concentration of the template in nanogram per microliter in the final reaction mix.
descriptiondocumentationlist of idReferencesType.
xReflist of xRefType.
annotationlist of annotationType.
typeinterRunCalibratorcheckFlag. TRUE
if this sample is used as inter run calibrator.
quantityquantityType. Quantity - The reference quantity of this sample. It should be only used if the sample is part of a standard curve. The provided value will be used to quantify unknown samples in absolute quantification assays. Only the use of positive integers (like 1, 10, 100, 1000) and fractions (e.g. 1, 0.1, 0.01, 0.001) is acceptable. The use of exponents (1, 2, 3, 4 or -1, -2, -3, -4) if forbidden, because it will not be interpreted as 10E1, 10E2, 10E3, 10E4 or 10E-1, 10E-2, 10E-3, 10E-4.
calibratorSamplecheckFlag. TRUE if this
sample is used as calibrator sample.
cdnaSynthesisMethodtemplateQuantityRDML::rdmlBaseType -> sampleType
new()
sampleType$new(
id,
description = NULL,
documentation = NULL,
xRef = NULL,
annotation = NULL,
type = sampleTypeType$new("unkn"),
interRunCalibrator = FALSE,
quantity = NULL,
calibratorSample = FALSE,
cdnaSynthesisMethod = NULL,
templateQuantity = NULL
)clone()
The objects of this class are cloneable with this method.
sampleType$clone(deep = FALSE)
deepWhether to make a deep clone.
Can take values:
unknown sample
non template control
no amplification control
standard sample
no target present
minusRT
positive control
optical calibrator sample
An R6Class generator object.
Inherits: enumType.
sampleTypeType$new(value)
@section Fields:
valuecheckString. Value.
RDML::rdmlBaseType -> RDML::enumType -> sampleTypeType
clone()
The objects of this class are cloneable with this method.
sampleTypeType$clone(deep = FALSE)
deepWhether to make a deep clone.
Inherits: rdmlBaseType.
An R6Class generator object.
sequencesType$new(forwardPrimer = NULL, reversePrimer = NULL, probe1 = NULL, probe2 = NULL, amplicon = NULL)
@section Fields:
forwardPrimerreversePrimerprobe1probe2ampliconRDML::rdmlBaseType -> sequencesType
new()
sequencesType$new( forwardPrimer = NULL, reversePrimer = NULL, probe1 = NULL, probe2 = NULL, amplicon = NULL )
clone()
The objects of this class are cloneable with this method.
sequencesType$clone(deep = FALSE)
deepWhether to make a deep clone.
RDML$SetFData() wrapperRead more at RDML.SetFData
SetFData(obj, ...)SetFData(obj, ...)
obj |
|
... |
|
Inherits: rdmlBaseType.
An R6Class generator object.
stepType$new(nr, description = NULL, temperature = NULL, gradient = NULL, loop = NULL, pause = NULL, lidOpen = NULL)
nrcheckCount. The incremental number of the step. First step should have value 1. The increment between steps should be constant and equivalent to 1.
descriptiontemperaturegradientlooppauselidOpenRDML::rdmlBaseType -> stepType
new()
stepType$new( nr, description = NULL, temperature = NULL, gradient = NULL, loop = NULL, pause = NULL, lidOpen = NULL )
clone()
The objects of this class are cloneable with this method.
stepType$clone(deep = FALSE)
deepWhether to make a deep clone.
A target is a PCR reaction with defined set of primers. PCR reactions for the same gene with distinct primer sequences are considered different targets. Inherits: rdmlBaseType.
An R6Class generator object.
targetType$new(id, description = NULL, documentation = NULL, xRef = NULL, type, amplificationEfficiencyMethod = NULL, amplificationEfficiency = NULL, amplificationEfficiencySE = NULL, detectionLimit = NULL, dyeId, sequences = NULL, commercialAssay = NULL)
iddescriptiondocumentationlist of idReferencesType.
xReflist of xRefType.
typeamplificationEfficiencyMethodamplificationEfficiencyamplificationEfficiencySEdetectionLimitdyeIdsequencescommercialAssayRDML::rdmlBaseType -> targetType
new()
targetType$new( id, description = NULL, documentation = NULL, xRef = NULL, type, amplificationEfficiencyMethod = NULL, amplificationEfficiency = NULL, amplificationEfficiencySE = NULL, detectionLimit = NULL, dyeId, sequences = NULL, commercialAssay = NULL )
clone()
The objects of this class are cloneable with this method.
targetType$clone(deep = FALSE)
deepWhether to make a deep clone.
Can take values:
reference target
target of interest
Inherits: enumType.
An R6Class generator object.
targetTypeType$new(value)
@section Fields:
valueRDML::rdmlBaseType -> RDML::enumType -> targetTypeType
clone()
The objects of this class are cloneable with this method.
targetTypeType$clone(deep = FALSE)
deepWhether to make a deep clone.
This step keeps a constant temperature on the heat block. Inherits: baseTemperatureType.
An R6Class generator object.
temperatureType$new(temperature, ...)
temperaturecheckNumber. The temperature of the step in degrees Celsius.
...Params of parent class baseTemperatureType.
RDML::rdmlBaseType -> RDML::baseTemperatureType -> temperatureType
new()
temperatureType$new(temperature, ...)
clone()
The objects of this class are cloneable with this method.
temperatureType$clone(deep = FALSE)
deepWhether to make a deep clone.
Inherits: rdmlBaseType.
An R6Class generator object.
templateQuantityType$new(conc, nucleotide)
@section Fields:
conccheckNumber. Concentration of the template in nanogram
per microliter in the final reaction mix.
nucleotideRDML::rdmlBaseType -> templateQuantityType
new()
templateQuantityType$new(conc, nucleotide)
clone()
The objects of this class are cloneable with this method.
templateQuantityType$clone(deep = FALSE)
deepWhether to make a deep clone.
A cycling program for PCR or to amplify cDNA. Inherits: rdmlBaseType.
An R6Class generator object.
thermalCyclingConditionsType$new(id, description = NULL, documentation = NULL, lidTemperature = NULL, experimenter = NULL, step)
iddescriptiondocumentationlist of idReferencesType.
lidTemperaturecheckNumber. The temperature in degrees Celsius of the lid during cycling.
experimenterlist of idReferencesType.
Reference to the person who made or uses this protocol.
steplist of stepType. The steps a protocol
runs through to amplify DNA.
RDML::rdmlBaseType -> thermalCyclingConditionsType
new()
thermalCyclingConditionsType$new( id, description = NULL, documentation = NULL, lidTemperature = NULL, experimenter = NULL, step )
clone()
The objects of this class are cloneable with this method.
thermalCyclingConditionsType$clone(deep = FALSE)
deepWhether to make a deep clone.
Inherits: rdmlBaseType.
An R6Class generator object.
xRefType$new(name = NULL, id = NULL)
@section Fields:
namecheckString. Reference to an external database,
for example "GenBank".
idcheckString. The ID of the entry within the external database, for example "AJ832138".
RDML::rdmlBaseType -> xRefType
new()
xRefType$new(name = NULL, id = NULL)
clone()
The objects of this class are cloneable with this method.
xRefType$clone(deep = FALSE)
deepWhether to make a deep clone.