Functions to correct for global correlations between color
channels or between successive sequencing cycles
Usage
## S4 method for signature 'SolexaIntensity'
DeCorrelateChannels(int,cycles=seq(1,dim(int)[3],by=1),theta=matrix(rep(c(0.8806742,1.3727418,0.883865,1.545728),length(cycles)),ncol=4,byrow=TRUE))
## S4 method for signature 'array'
DeCorrelateChannels(int,cycles=seq(1,dim(int)[3],by=1),theta=matrix(rep(c(0.8806742,1.3727418,0.883865,1.545728),length(cycles)),ncol=4,byrow=TRUE))
DeCorrelateChannels(int,...)
## S4 method for signature 'SolexaIntensity'
OptimizeAngle(int,cycles=seq(1,dim(int)[3],by=1),...)
OptimizeAngle(int,...)
## S4 method for signature 'SolexaIntensity'
DeCorrelateCycles(int,ncycles=dim(int)[3],rate=1.8e-2)
## S4 method for signature 'array'
DeCorrelateCycles(int,ncycles=dim(int)[3],rate=1.8e-2)
DeCorrelateCycles(int,...)
## S4 method for signature 'SolexaIntensity'
OptimizeRate(int,ncycles=dim(int)[3],...)
OptimizeRate(int,...)
## S4 method for signature 'RolexaRun'
TileNormalize(run=Rolexa.env,int,cycles=seq(1,dim(int)[3],by=1))
TileNormalize(run,...)
Arguments
run
a RolexaRun object defining the run parameters
int
a SolexaIntensity
object or an array
cycles, ncycles
the cycles or the number of cycles (starting
from 1) to apply the correction to
theta
a length(cycles)*4 matrix with four angles per cycle defining the
coordinate changes
rate
the rate of nucleotide mis-incorporation at each cycle
...
additional arguments passed to optim
Details
DeCorrelateChannels applies to coordinate transforms:
one transforming the axes 1,2 to the axes with angles
theta[,1:2] relative to axis 1, and similarly with axes 3,4
and angles theta[,3:4]. These angles can be calculated with
OptimizeAngle which minimizes the correlations between channel
1 and 2, and between channel 3 and 4, for each
cycle. DeCorrelateCycles assumes that at each cycles, a
fraction rate of sequences fail to incorporate any nucleotides
and therefore the sequence lengths at each colony display a binomial
distribution which is corrected for by taking into account the
intensity measured at previous cycles. OptimizeRate calculates
a rate that minimizes correlations between consecutives cycles.
TileNormalize estimates the local trend by loess fitting
of the model int ~ x+y and substracts it from the intensity
matrix.
Value
TileNormalize, DeCorrelateChannels and DeCorrelateCycles return an
object of the same type as int corrected for spurious
correlations. OptimizeAngle returns an length(cycles)*4
matrix and OptimizeRate returns a single positive real
number.
Author(s)
Jacques Rougemont, Arnaud Amzallag, Christian Iseli, Laurent Farinelli, Ioannis Xenarios, Felix Naef
References
Probabilistic base calling of Solexa sequencing data,
BMC Bioinformatics 2008, 9:431
R version 3.3.1 (2016-06-21) -- "Bug in Your Hair"
Copyright (C) 2016 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> library(Rolexa)
Error in library(Rolexa) : there is no package called 'Rolexa'
Execution halted