This is an adaptation of two-dimesional COW alignment, first implemented in MATLAB (Tomasi et al. 2004) . This functions takes a sample chromatogram to be aligned against a reference. The argument [segment] will be used to split the whole chromatogram in n and m parts the first and the second dimension, respectively. The [max_warp] argument provides de maximum tolerance of the signal transformation for the first and the second dimension (Dabao Zhang et al. 2008) .
Arguments
- sample_chrom
A GCxGC class chromatogram imported by read_chrom function or a preprocessed chromatogram.
- ref_chrom
A representative GCxGC chromatogram chosen to be the template which sample_chrom will be aligned.
- segments
A two integer vector with number of segments which the first and second dimension will be divided, respectively.
- max_warp
A two integer vector with the maximum warping parameter.
References
Dabao Zhang, Xiaodong Huang, Fred E. Regnier, Min Zhang (2008).
“Two-dimensional correlation optimized warping algorithm for aligning GCxGC-MS data.”
Analytical Chemistry, 80(8), 2664--2671.
Tomasi G, Van Den Berg F, Andersson C (2004).
“Correlation optimized warping and dynamic time warping as preprocessing methods for chromatographic data.”
Journal of Chemometrics, 18(5), 231--241.
Examples
GB08_fl <- system.file("extdata", "08GB.cdf", package = "RGCxGC")
GB09_fl <- system.file("extdata", "09GB.cdf", package = "RGCxGC")
GB08 <- read_chrom(GB08_fl, 5L)
#> Warning: The last 51 signals will be omitted
#> Warning: data length [61051] is not a sub-multiple or multiple of the number of rows [500]
#> Retention time ranges:
#> 1D (min): 7.98 18.16
#> 2D (sec): 0 5
#> Acquisition rate: 100
GB09 <- read_chrom(GB09_fl, 5L)
#> Warning: The last 51 signals will be omitted
#> Warning: data length [61051] is not a sub-multiple or multiple of the number of rows [500]
#> Retention time ranges:
#> 1D (min): 7.98 18.16
#> 2D (sec): 0 5
#> Acquisition rate: 100
# \donttest{
GB09_al <- twod_cow(sample_chrom = GB09, ref_chrom = GB08,
segments = c(20, 40), max_warp = c(2, 8))
# }