View source: R/linear_transformation.R
linear_transformation | R Documentation |
Shifts all peaks within samples to maximise the similarity to a reference sample. For optimal results, a sufficient number of shared peaks are required to find a optimal solution. A reference needs to be specified, for instance using choose_optimal_reference
. Linear shifts are evaluated within a user-defined window in discrete steps. The highest similarity score defines the shift that will be applied. If more than a single shift step yields to the same similarity score, the smallest absolute value wins in order to avoid overcompensation. The functions is envoked internally by align_chromatograms
.
linear_transformation(
gc_peak_list,
reference,
max_linear_shift = 0.05,
step_size = 0.01,
rt_col_name,
Logbook = NULL
)
gc_peak_list |
List of data.frames. Each data.frame contains GC-data (e.g. retention time, peak area, peak height) of one sample. Variables are stored in columns. Rows represent distinct peaks. Retention time is a required variable. |
reference |
A character giving the name of a sample included in the dataset. All samples are aligned to the reference. |
max_linear_shift |
Numeric value giving the window size considered in the full alignment. Usually, the amplitude of linear drift is small in typical GC-FID datasets. Therefore, the default value of 0.05 minutes is adequate for most datasets. Increase this value if the drift amplitude is larger. |
step_size |
Integer giving the step size in which linear shifts are evaluated between |
rt_col_name |
A character giving the name of the column containing the retention times. The decimal separator needs to be a point. |
Logbook |
A list. If present, a summary of the applied linear shifts in full alignments of peak lists is appended to the list. If not specified, a list will be created automatically. |
A similarity score is calculated as the sum of deviations in retention times between all reference peaks and the closest peak in the sample. The principle idea is that the appropriate linear transformation will reduce the deviation in retention time between homologous peaks, whereas all other peaks should deviate randomly. Among all considered shifts, the minimum deviation score is selected for subsequent full alignment by shifting all peaks of the sample by the same value.
A list containing two items.
chroma_aligned |
List containing the transformed data |
Logbook |
Logbook, record of the applied shifts |
Martin Stoffel (martin.adam.stoffel@gmail.com) & Meinolf Ottensmann (meinolf.ottensmann@web.de)
dat <- peak_data[1:10]
dat <- lapply(dat, function(x) x[1:50,])
x <- linear_transformation(gc_peak_list = dat, reference = "C2", rt_col_name = "time")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.