| NetCDFPeakFinding {TargetSearch} | R Documentation |
This function reads a netcdf chromatogram file, finds the apex intensities and returns a list containing the retention time and the intensity matrices.
NetCDFPeakFinding(cdfFile, massRange = NULL, Window = 15, IntThreshold = 10,
pp.method = "ppc", baseline = FALSE, baseline.opts = NULL)
cdfFile |
A character string naming a netcdf file. |
massRange |
A two component numeric vector with the scan mass range to extract
or |
Window |
The window used by peak picking method. The number of points actually used
is |
IntThreshold |
Apex intensities lower than this value will be removed from the RI files. |
pp.method |
The pick picking method to be used. Options are |
baseline |
Logical. Should baseline correction be performed? |
baseline.opts |
A list of options passed to |
.
The function expects the following NetCDF variables: intensity_values,
mass_values, scan_index, point_count and scan_acquisition_time.
Otherwise, an error will be displayed.
The massRange parameter is a numeric vector with two components: lower
and higher masses. All masses in that range will be extracted. Note that it is
not possible to extract a discontinuous mass range. It also can be NULL,
in which case the mass range will be determined by scanning the cdf file.
There are two peak picking algorithms that can be used. The "smoothing" method
smooths the m/z curves and then looks for a change of sign of the intensity difference
between two consecutive points. The "ppc" uses a sliding window and looks
for the local maxima. This method is based on R-package ppc.
A three component list.
Time |
The retention time vector. |
Peaks |
The intensity matrix. Rows are the retention times and columns are masses. The first column is the lower mass value and the last one is the higher mass. |
massRange |
The mass range. |
Alvaro Cuadros-Inostroza, Matthew Hannah, Henning Redestig
require(TargetSearchData)
CDFpath <- file.path(find.package("TargetSearchData"), "gc-ms-data")
CDFfiles <- dir(CDFpath, pattern = ".cdf$", full.names = TRUE)
CDFfiles
# extrac peaks of first chromatogram
peaks.1 <- NetCDFPeakFinding(CDFfiles[1], massRange = c(85, 320), Window = 15,
IntThreshold = 10, pp.method = "smoothing")
# scan acquisition times
head(peaks.1$Time)
# peaks in matrix form. first column is mass 85, last one is mass 320.
head(peaks.1$Peaks)