RELEASE HISTORY OF THE "MALDIquant" PACKAGE =========================================== CHANGES IN MALDIquant VERSION 1.22.3 [2024-08-19]: -------------------------------------------------- INTERNAL CHANGES * Use `R_Calloc` and `R_Free` instead of `Calloc` and `Free` in `src/lowerConvexHull.c`, respectively, to reflect changes in the R API and fullfil STRICT_R_HEADERS check. DOCUMENTATION * Drop journal URLs for `fiedler2009subset` and `MALDIquant` in favour of DOI (and to avoid R CMD check warnings of possible invalid URLs). CHANGES IN MALDIquant VERSION 1.22.2 [2024-01-22]: -------------------------------------------------- INTERNAL CHANGES * Fix spaces in error message of `determineWarpingFunctions`. * Fix VignetteEngine NOTE. CHANGES IN MALDIquant VERSION 1.22.1 [2023-03-20]: -------------------------------------------------- * Use symbols instead of names in `.Call` for faster lookup of C functions. CHANGES IN MALDIquant VERSION 1.22 [2022-11-10]: ------------------------------------------------ BUGFIXES * Fix merging metadata with `NA` values; affected functions: `mergeMassSpectra`, `mergeMassPeaks`, `averageSpectra`. Thanks to Petr Hasler for reporting. MODIFICATIONS * Fix Paolo's family name in `DESCRIPTION` file. CHANGES IN MALDIquant VERSION 1.21 [2021-12-19]: ------------------------------------------------ MODIFICATIONS * Reduce memory requirement for `filterPeaks`, especially for very sparse peak lists by rewriting `filterPeaks` and `.as.matrix.MassObjectList` to use a `list` internally instead of a `matrix`; see #71. Contributed by Paolo Inglese (@paoloinglese). INTERNAL CHANGES * Remove `is.null(getGeneric(...))` tests before setting generics for S4 methods to avoid errors in package loading (especially with `pkgload::load_all()`). CHANGES IN MALDIquant VERSION 1.20 [2021-07-29]: ------------------------------------------------ NEW FEATURES * `binPeaks` gains a new method `"reference"` to bin to the first given `MassPeaks` object; see #69. Thanks to Alexander Bartel (@ndevln) for the suggestion. MODIFICATIONS * Don't run example in `MALDIquant-parallel` manual page to avoid long example runtime WARNING in R CMD check. * Change URLs from http to https where possible. CHANGES IN MALDIquant VERSION 1.19.5 [2020-04-02]: -------------------------------------------------- BUGFIXES * Don't import `plot` from graphics to fix error in R-devel (R 4.0.0) * Bump required R version to 4.0.0. CHANGES IN MALDIquant VERSION 1.19.4 [2019-08-08]: -------------------------------------------------- BUGFIXES * Use `data(fiedler2009subset)` in manual page to avoid WARNING on R-devel. CHANGES IN MALDIquant VERSION 1.19.3 [2019-05-12]: -------------------------------------------------- BUGFIXES * `approxfun`: remove wrong generic. Thanks to Martin Mächler for reporting. * Remove useless generics for `as.matrix`, `length`, `lines`, `points`, `plot`. CHANGES IN MALDIquant VERSION 1.19.2 [2019-03-13]: -------------------------------------------------- BUGFIXES * `binPeaks` propagated values to empty MassPeaks objects; see #61. Thanks to Chase Clark (@chasemc) for reporting. CHANGES IN MALDIquant VERSION 1.19.1 [2019-03-03]: -------------------------------------------------- BUGFIXES * `calibratyIntensity` ignored the `mc.cores` argument. Thanks to @dsammour for reporting. CHANGES IN MALDIquant VERSION 1.19 [2018-11-26]: ------------------------------------------------ IMPROVEMENTS: * `determineWarpingFunctions`'s return value gains a new argument `nmatch` storing the number of matches of the given peaks against the reference; see #59. Suggested by Melanie Föll (@foellmelanie). CHANGES IN MALDIquant VERSION 1.18.1 [2018-10-04]: -------------------------------------------------- INTERNAL CHANGES * `determineWarpingFunctions`, change handling of minimal necessary peaks for each warping method. CHANGES IN MALDIquant VERSION 1.18 [2018-07-06]: ------------------------------------------------ IMPROVEMENTS * `determineWarpingFunctions` gains an `allowNoMatches` argument. If `allowNoMatches` is `TRUE` a warning is thrown instead of an error and the resulting list of warping functions will contain `NA` at the specific index; see #57. Suggested by Melanie Föll (@foellmelanie). * `warpMassPeaks`/`warpMassSpectra` gain an `emptyNoMatches` argument. If `emptyNoMatches` is `TRUE` the intensity values of `MassPeaks`/`MassSpectra` objects with missing warping functions are set to zero; see #57 for details. Suggested by Melanie Föll (@foellmelanie). * `alignSpectra` gain two new arguments: `allowNoMatches` and `emptyNoMatches`; see #57 for details. Suggested by Melanie Föll (@foellmelanie). * The manual pages of `alingSpectra`, `binPeaks`, `determineWarpingFunctions` and `referencePeaks` gain a sentence for use of the "tolerance" argument in ppm; see issue #56 for details; Suggested by Jimmy Lawrence . REMOVED ARGUMENT * `plot` now doesn't draw a horizontal line at `y == 0` anymore. The argument "abline.col" was removed as well. To get the old behaviour call `plot(spectrum); abline(h=0, col="#808080")`; Suggested by Jimmy Lawrence . CHANGES IN MALDIquant VERSION 1.17 [2017-11-12]: ------------------------------------------------ NEW FEATURES * `smoothIntensity` gains a new argument "weighted" (default: `FALSE`) for `method="MovingAverage"`. If `TRUE` a weighted moving average is applied. Added by Sigurdur Smarason. CHANGES IN MALDIquant VERSION 1.16.4 [2017-08-27]: -------------------------------------------------- BUGFIXES * `coordinates` now returns `NULL` (instead of an error) if there are no imaging information in the metadata of a spectrum/peaks list. CHANGES IN MALDIquant VERSION 1.16.3 [2017-05-30]: -------------------------------------------------- IMPROVEMENTS * Mass values are sorted now if they were not before; affected functions: `createMassSpectrum`, `createMassPeaks`, `validObject`. INTERNAL * Replace `sort.int(..., method="quick")` by `sort.int(...)` and let R decide which sorting method is appropriated ("radix"/"insert" [default] is often faster than "quick"). CHANGES IN MALDIquant VERSION 1.16.2 [2017-04-04]: -------------------------------------------------- INTERNAL * Disable symbol search for native C routines. CHANGES IN MALDIquant VERSION 1.16.1 [2016-12-23]: -------------------------------------------------- BUGFIXES * `match.closest`: fix results for `x >= max(table)`. CHANGES IN MALDIquant VERSION 1.16 [2016-12-13]: ------------------------------------------------ NEW FEATURES * `match.closest` allows relaxed matching. INTERNAL * The former hidden `.which.closest` is renamed into the exported `match.closest` and gains a "tolerance" and "nomatch" argument to allow relaxed matching. * `.pseudoCluster` use the new `match.closest` (could result in slightly different tolerance values). CHANGES IN MALDIquant VERSION 1.15 [2016-06-25]: ------------------------------------------------ NEW FEATURES * Add `monoisotopicPeaks` to find monoisotopic peaks in `MassPeaks` objects. IMPROVEMENTS * `plot`: x-axis label is "m/z" now (was "mass" before). Thanks to Robert Winkler for reporting of the sometimes misleading label. * Add `mz` and `mz<-` (same as `mass`/`mass<-`) to follow `ProtGenerics` guidelines and for consistency. BUGFIXES * `labelPeaks` didn't respect "srt=c(90, 180, 270, 360)" if "avoidOverlap=TRUE". Please note that "srt %% 90 != 0" in combination with "avoidOverlap=TRUE" is still not supported! INTERNAL * Throw a warning if `plotMsiSlice` was called on a interactive device with multiple centers (the warning was not thrown correctly before). * Throw an error if `trim,list` was called on a generic list instead of a list of AbstractMassObjects. * Remove textLabelRect-functions.R and move its content to calculateLabelPositions-functions.R. CHANGES IN MALDIquant VERSION 1.14 [2015-11-18]: ------------------------------------------------ IMPROVEMENTS * `?estimateBaseline`: clarify that "decreasing=TRUE" is the default for the SNIP baseline estimation algorithm (`estimateBaseline(..., method="SNIP")`). BUGFIXES * MALDIquant depends on R 3.2.0 now. Due to a bug in R (PR#15707, fixed in R 3.2.0) the ... argument was not interpreted in nested function calls. This results in failures of `calibratyIntensity` on R < 3.2.0. REMOVED ARGUMENTS/FUNCTIONS * `plotImsSlice`: (was defunct since 1.13) use `plotMsiSlice` instead. It has slightly different arguments; see `?plotMsiSlice` for details. INTERNAL CHANGES: * `.as.binary.matrix` now always returns an integer matrix. CHANGES IN MALDIquant VERSION 1.13 [2015-09-16]: ------------------------------------------------ IMPROVEMENTS * `calibratyIntensity` gains a "range" argument for "median" and "PQN" as well; in 1.12 just "TIC" was supported. * Extend example section in `?MALDIquant-parallel` manual page. * Add hint about _relative_ tolerance in manual pages `?alignSpectra`, `?binPeaks`, `?determineWarpingFunctions` and `?referencePeaks`; Thanks to Damien Portevin for reporting of the ambiguous phrase. MODIFICATIONS * Rewrite DESCRIPTION and explain acronyms to follow the latest version of the CRAN Repository Policy. DEFUNCT ARGUMENTS/FUNCTIONS * `plotImsSlice`: use `plotMsiSlice` instead. It has slightly different arguments; see `?plotMsiSlice` for details. BUGFIXES * `calibrateIntensity`: don't apply a scaling factor that equals zero anymore (happens in rare cases for method="median"). It throws a warning instead and leaves the spectrum untouched; fixes #51. * `.plotMsiSlice` just used the first center if "combine=TRUE"; affected functions: `plotMsiSlice`. * Add `smoothIntensity` to the `?MALDIquant-parallel` manual page. Thanks to Leiming Yu for reporting the missing entry. INTERNAL CHANGES * Importing non-base functions/methods from recommended R packages (graphics, stats, ...) as required by R-devel. * Turn `.calculateLabelPositions`, `.testLabelOverlap`, `.labelOverlap` into normal functions (were methods before). * `msiSlices`: use NA_real_ instead of logical NA. CHANGES IN MALDIquant VERSION 1.12 [2015-06-11]: ------------------------------------------------ NEW FEATURES * Add `as` for MassPeaks to convert them into MassSpectrum objects. * Add `coordinates` methods for AbstractMassObjects and list objects to access/set coordinates for MSI datasets. * Add `msiSlices` functions to create slices of a MSI dataset. * `calibratyIntensity(object, method="TIC")`: gains a "range" argument allowing to calibrate spectra by TIC on a specific mass range; closes #27. * Add parallel support on unix-based platforms using the parallel package. The following functions/methods supports the "mc.cores" argument (default is 1): `trim`, `transformIntensity`, `removeBaseline`, `calibrateIntensity`, `detectPeaks`, `alignSpectra`, `averageMassSpectra`, `mergeMassPeaks`; Please read also `?"MALDIquant-parallel"`. IMPROVEMENTS * `intensityMatrix`: rewrite to improve execution time. * `trim`: rewrite to improve execution time. MODIFICATIONS * Change generics of `mass` and `intensity` from `function(object)` to `function(object, ...)` to provide the same generics as Bioconductor's ProtGenerics package. * `intensityMatrix`: gains an attribute "mass" that stores the unique mass. DEPRECATED ARGUMENTS/FUNCTIONS * `plotImsSlice`: use `plotMsiSlice` instead. It has slightly different arguments; see `?plotMsiSlice` for details. REMOVED ARGUMENTS/FUNCTIONS * `intensityMatrix` for MassSpectrum objects (was defunct since 1.10). BUGFIXES * Fix vignette call in `?MALDIquant-package`. INTERNAL CHANGES * The return value of the internal `.as.matrix.MassObjectList` function gains an attribute "mass" that stores the unique mass (conversions of the colnames are not needed anymore); affected functions: `intensityMatrix` * Remove some useless `cbind` calls in `.estimateNoise*` and `.estimateBaseline`; no user visible changes; affected functions: `estimateNoise`, `estimateBaseline`, `detectPeaks` * Remove superfluous arguments in internal `.calibrateIntensitySimple`. * Avoid double check for negative intensity values in `transformIntensity`. CHANGES IN MALDIquant VERSION 1.11 [2014-08-11]: ------------------------------------------------ NEW FEATURES * Add `plotImsSlice`: a function to plot Imaging Mass Spectrometry data. MODIFICATIONS * Rename the vignette to MALDIquant-intro.pdf. * Move the content of the manual pages of `.savitzkyGolay` and `.movingAverage` to `smoothIntensity` and remove the old ones. * Move the content of the manual pages of `.estimateBaseline{Snip,TopHat,ConvexHull,Median}` to `estimateBaseline` and remove the old ones. * Move the content of the manual pages of `.estimateNoise{Mad,SuperSmoother}` to `estimateNoise` and remove the old ones. CHANGES IN MALDIquant VERSION 1.10 [2014-04-11]: ------------------------------------------------ IMPROVEMENTS * Add a general vignette. * `createMassSpectrum`/`createMassPeaks`: a warning is shown if negative intensity values are found. * `.transformIntensity`: a warning is shown if negative intensity values are generated and set them to zero; affected functions: `transformIntensity`, `smoothIntensity`, `calibrateIntensity`. * `determineWarpingFunctions`: a warning is shown if the "reference" contains less than ten peaks; affected functions: `determineWarpingFunctions`, `alignSpectra` * `trim`: a warning is shown if the resulting MassSpectrum/MassPeaks object does not contain any data points. MODIFICATIONS * Use `table` instead of `any(length(fiedler2009subset[[1]]) == sapply(...` in demo/workflow.R. DEFUNCT ARGUMENTS/FUNCTIONS * `intensityMatrix` for MassSpectrum objects. REMOVED ARGUMENTS/FUNCTIONS * `isMassObject`/`isMassObjectList`: use `isMassSpectrum`, `isMassPeaks`, `isMassSpectrumList` or `isMassPeaksList` instead. * `totalIonCurrent,MassPeaks-method`: TIC of peaks is meaningless. * `totalIonCurrent<-,MassSpectrum-method`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `standardizeTotalIonCurrent`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `calibrate`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `ltrim`/`rtrim`: use `trim(..., range=c(min, max))` instead. * `determineWarpingFunctions`, argument "warpingFunction": use "method" argument instead. * `mergeMassPeaks`, argument "fun": use "method" argument instead. * `mergeMassSpectra`: use `averageMassSpectra`. * `savitzkyGolay`: use `smoothIntensity(..., method="SavitzkyGolay")` instead. * `movingAverage`: use `smoothIntensity(..., method="MovingAverage")` instead. * `transformIntensity`, argument "fun": use "method" argument instead. * `removeBaseline`, argument "fun": use "method" argument instead. * `detectPeaks`, argument "fun": use "method" argument instead. BUGFIXES * `.which.closest`: check limits to avoid missing matches in some rare edge cases; affected functions: `labelPeaks`. * Add missing reference "Andrew 1979" to the `.estimateBaselineConvexHull` manual page. INTERNAL CHANGES * `estimateNoise`: move body of `estimateNoise,MassSpectrum` to internal `.estimateNoise`. * Move tests into tests/testthat/ to adapt to testthat 0.8 and new CRAN policy; closes #44. * `.localMaximaR`: removed. It was replaced by a C version of `.localMaxima` in 1.5. * `.snipR`: removed. It was replaced by a C version of `.estimateBaselineSnip` in 0.2. * `.lowerConvexHullR`: removed. It was replaced by a C version of `.estimateBaselineConvexHull` in 0.3. * `.topHatR`: removed. It was never used and replaced by a C version of `.estimateBaselineTopHat` in 1.6. CHANGES IN MALDIquant VERSION 1.9 [2014-01-14]: ----------------------------------------------- NEW FEATURES * Add `alignSpectra`: a wrapper around `detectPeaks`, `determineWarpingFunctions` and `warpMassSpectra` to provide an easier workflow. IMPROVEMENTS * `filterPeaks`: introduce "mergeWhitelists" argument to additionally keep peaks that occur at least in one group. The default behaviour does not changed. Please see the man page of `filterPeaks` for details. * `intensityMatrix`: add "spectra" argument to allow interpolation of missing peaks if corresponding spectra is given. * Replace some `lapply` calls by `mapply` to allow different "halfWindowSize" arguments etc.; affected methods: `smoothIntensity`, `removeBaseline`, `detectPeaks`. MODIFICATIONS * `filterPeaks`: "minFrequency" > 1 and "minNumber" > n is not set to 1 or n anymore; only a warning about "empty peak whitelists" is given; see also issue #26. * `filterPeaks`: replace warning about too large "minFrequency" or "minNumber" by a warning about "empty peak whitelists". * `intensityMatrix`: rename first argument to "peaks" * demo/workflow.R: introduce `alignSpectra`. * demo/warping.R: adapt to current preferred workflow. * demo/peaks.R: add smoothing and a few new plots. DEPRECATED ARGUMENTS/FUNCTIONS * `intensityMatrix` for MassSpectrum objects. DEFUNCT ARGUMENTS/FUNCTIONS * `isMassObject`/`isMassObjectList`: use `isMassSpectrum`, `isMassPeaks`, `isMassSpectrumList` or `isMassPeaksList` instead. * `totalIonCurrent,MassPeaks-method`: TIC of peaks is meaningless. * `totalIonCurrent<-,MassSpectrum-method`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `standardizeTotalIonCurrent`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `calibrate`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `ltrim`/`rtrim`: use `trim(..., range=c(min, max))` instead. * `determineWarpingFunctions`, argument "warpingFunction": use "method" argument instead. * `mergeMassPeaks`, argument "fun": use "method" argument instead. * `mergeMassSpectra`: use `averageMassSpectra`. * `savitzkyGolay`: use `smoothIntensity(..., method="SavitzkyGolay")` instead. * `movingAverage`: use `smoothIntensity(..., method="MovingAverage")` instead. * `transformIntensity`, argument "fun": use "method" argument instead. * `removeBaseline`, argument "fun": use "method" argument instead. * `detectPeaks`, argument "fun": use "method" argument instead. BUGFIXES * `plot`: fix subtitle for averaged spectra. INTERNAL CHANGES * Add `.as.matrix.MassObjectList` to avoid internal dependencies on `intensityMatrix`; affected functions: `filterPeaks`, `referencePeaks`. * Add `.as.binary.matrix`. * Remove man/MALDIquant-internal.Rd. * Argument "representation" of `setClass` is deprecated since R 3.0.0; use "slots" instead. affected classes: AbstractMassObject, MassPeaks, MassSpectrum. CHANGES IN MALDIquant VERSION 1.8 [2013-09-08]: ----------------------------------------------- NEW FEATURES * Add `smoothIntensity`: to apply smoothing filters. Supports "SavitzkyGolay" and "MovingAverage". `savitzkyGolay` and `movingAverage` are now marked as deprecated. * Add `calibrateIntensity`: to calibrate/normalize intensity values. Supports "TIC", "median" and "PQN" calibration/normalization. It replaces three similar functions with different names: `totalIonCurrent<-`, `standardizeTotalIonCurrent`, `calibrate` (these three are marked as deprecated and will be removed in future releases). * Add `averageMassSpectra`: supports "mean", "median" and "sum" aggregation of spectra. It replaces `mergeMassSpectra`. * Add C implementation of colMedians for faster averaging/merging of MassSpectrum/MassPeaks objects. * Add LongVector support; now MALDIquant depends on R >= 3.0.0. MODIFICATIONS * MassSpectrum/MassPeaks class: change representation of slots mass, intensity, snr to "numeric" (was "vector" before). Should not affect anything. Maybe you have to reimport raw data and resave RData files. * `trim`: replace "minMass" and "maxMass" arguments by new "range" argument. * `transformIntensity`: add "method" argument (supports "sqrt", "log", "log2", "log10"). "fun" argument is deprecated. * `estimateBaseline`/`removeBaseline`: rename argument method="Median" to method="median". * `determineWarpingFunctions`: add "method" argument (supports "lowess", "linear", "quadratic", "cubic"); "warpingFunctions" argument is deprecated. * `mergeMassPeaks`: add "method" (supports "mean", "median", "sum") argument; "fun" argument is deprecated. DEPRECATED ARGUMENTS/FUNCTIONS * `isMassObject`/`isMassObjectList`: use `isMassSpectrum`, `isMassPeaks`, `isMassSpectrumList` or `isMassPeaksList` instead. * `totalIonCurrent,MassPeaks-method`: TIC of peaks is meaningless. * `totalIonCurrent<-,MassSpectrum-method`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `standardizeTotalIonCurrent`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `calibrate`: use `calibrateIntensity(..., method="TIC")` instead to calibrate/normalize MassSpectrum objects. * `ltrim`/`rtrim`: use `trim(..., range=c(min, max))` instead. * `determineWarpingFunctions`, argument "warpingFunction": use "method" argument instead. * `mergeMassPeaks`, argument "fun": use "method" argument instead. * `mergeMassSpectra`: use `averageMassSpectra`. * `savitzkyGolay`: use `smoothIntensity(..., method="SavitzkyGolay")` instead. * `movingAverage`: use `smoothIntensity(..., method="MovingAverage")` instead. * `transformIntensity`, argument "fun": use "method" argument instead. * `removeBaseline`, argument "fun": use "method" argument instead. * `detectPeaks`, argument "fun": use "method" argument instead. REMOVED FUNCTIONS * `iplot`: because it throws NOTEs on CRAN's R CMD check and the most important function `grDevices::getGraphicEvents` behaves different on Unix/Windows platform (some keys don't working) and contains some nasty bugs, e.g.: https://bugs.r-project.org/bugzilla3/show_bug.cgi?id=15208 Also the "zoom" R package provides similar functionality. BUGFIXES * `totalIonCurrent`: fix calculation by estimating the integral; fixes #29. affected functions: `totalIonCurrent`, `calibrateIntensity(..., method="TIC")`. * `filterPeaks`: reduce minNumber to length(l) to avoid complete removal of peaks; fixes #26. * src/snip.c: fix some segmention faults because of a missing PROTECT for "duplicate" call. affected functions: `estimateBasline/removeBaseline(..., method="SNIP")` - Add `import("methods")` to NAMESPACE (fixes #36). INTERNAL CHANGES * Remove internal `imputeMass`. * Remove internal `.replaceNonEmptyMassObjects`. * `approxfun`: returns NA for empty MassSpectrum objects. * `[` (subset method): little speed up by calling `which` to evaluate logical expressions only once. * Use integer values where possible. * Modify C written functions to support LongVectors; closes #13; now MALDIquant depends on R >= 3.0.0. CHANGES IN MALDIquant VERSION 1.7 [2013-05-23]: ----------------------------------------------- NEW FEATURES * Add `isRegular` method to test MassSpectrum objects for regular increasing mass values/intervals; closes #23. * Add `savitzkyGolay`, Savitzky-Golay Smoothing Filter. * Add memory usage to `show` output. * `iplot`: add horizontal distance measurement (using left mouse clicks). * `filterPeaks`: add "minNumber" argument to allow an absolute threshold for filtering; closes #21. * demo/workflow.R: add raw data check. IMPROVEMENTS * demo/workflow.R: replace moving average smoother by Savitzky-Golay-Filter. * `.estimateBaselineSnip`: support decreasing/increasing clipping window; controlled by new argument "decreasing"; use a decreasing window per default to get a smoother baseline; (use decreasing=FALSE to get the old behaviour). * `isEmpty`: treat spectra with only zeros as intensity values as empty ones. * `movingAverage`: left/right extrema now calculated for 0:windowSize and (n-windowSize+1):n (before they were set to NA). BUGFIXES * `filterPeaks`: doesn't round (floor) minFrequency argument anymore; led to unexpected results; fixes #22. * `mergeMassSpectra`: empty MassSpectrum objects are ignored now (but if all objects are empty `mergeMassSpectra` will return an empty MassSpectrum object, too); fixes #20. * `.mergeMetaData`: fix merging of lists with different lengths; fixes #17. affected functions: `mergeMassPeaks`, `mergeMassSpectra`. * `.doByLabels: preserve order of non-factor labels; fixes #19; affected functions: `filterPeaks`, `mergeMassPeaks`, `mergeMassSpectra`. * `totalIonCurrent`/`isEmpty`: fix integer overflow; fixes #25. * `totalIonCurrent<-`: fix handling of empty spectra; fixes #15. * Remove LICENSE file. INTERNAL CHANGES * Replace all `paste(..., sep="")` calls by `paste0`; now MALDIquant depends on R >= 2.15. * Replace all `.C` interfaces by `.Call`. CHANGES IN MALDIquant VERSION 1.6 [2013-03-01]: ----------------------------------------------- NEW FEATURES * Add interactive plot method: `iplot`. * Add TopHat baseline estimation: `estimateBaseline(..., method="TopHat")`/ `removeBaseline(..., method="TopHat")`. IMPROVEMENTS * Include tests in inst/tests. BUGFIXES * `.which.closest`: rounding .5 to the next highest integer (before: to the next lowest one); affected functions: `labelPeaks`. * `.doByLabels`: fix an error that occurred if all labels were unique (fixes #1); affected functions: `filterPeaks`, `mergeMassPeaks`, `mergeMassSpectra`. * `estimateBaseline(..., method="Median")`: do not allow a window size > n (fixes #4). CHANGES IN MALDIquant VERSION 1.5 [2012-12-06]: ----------------------------------------------- NEW FEATURES * Add `movingAverage`. * `labelPeaks`: add labels argument. IMPROVEMENTS * `detectPeaks`: only throw an error if windowSize > length (windowSize == length is no error anymore). * `.doByLabels`: drop unused levels of argument "labels"; affected functions: `filterPeaks`, `mergeMassPeaks`, `mergeMassSpectra`. * Rewrite `localMaxima` in C to reduce running time and memory consumption. CHANGES IN MALDIquant VERSION 1.4 [2012-10-30]: ----------------------------------------------- NEW FEATURES * Add slot "snr" to MassPeaks. * Add `.estimateNoiseMad` (same implementation as old `estimateNoise` method). * Add `.estimateNoiseSuperSmoother`. * `estimateNoise`: add method argument, change return value to two column matrix. * `binPeaks`/`referencePeaks`: add argument method=c("strict", "relaxed"); "relaxed" allows multiple peaks of the same spectrum in a bin. IMPROVEMENTS * `labelPeaks`: remove tolerance argument (now always select the closest one). * `mergeMassPeaks`/`mergeMassSpectra`: merge metaData, too. * `detectPeaks`: new example for a custom noise estimation function. * `calibrate`: add ... to generic definition of `calibrate`. * Change demo licences to public domain. INTERNAL CHANGES * `detectPeaks`: change internal snr handling. * `show`: rewrite (OO design). CHANGES IN MALDIquant VERSION 1.3 [2012-09-16]: ----------------------------------------------- NEW FEATURES * Add `trim` and `[` methods. * `labelPeaks`: add avoidOverlap argument to avoid overlapping of peak labels. IMPROVEMENTS * `detectPeaks`: add error message if windowSize >= length. * `determineWarpingFunctions`: add error message if it could not match any peak to reference peaks. MODIFICATIONS * `labelPeaks`: change default value for verticalOffset argument. * `labelPeaks`: remove family argument. BUGFIXES * Fix `isMassSpectrumList`. GENERAL * Update DESCRIPTION file to use Authors@R and depends on R>=2.14 now. * Add CITATION file. CHANGES IN MALDIquant VERSION 1.2 [2012-07-18]: ----------------------------------------------- BUG FIXES * `determineWarpingFunctions`: stop with an error if reference MassPeaks object is empty. * `.doByLabel`: preserve list order (affects `filterPeaks`). INTERNAL CHANGES * Replace some `sapply` calls by `lapply`. CHANGES IN MALDIquant VERSION 1.1 [2012-05-06]: ----------------------------------------------- NEW FEATURES * Add `totalIonCurrent` method (replacement for `calibrate` function on MassSpectrum objects). * Add methods accepting lists as arguments: `transformIntensity`, `removeBaseline`, `detectPeaks`. MODIFICATIONS * `detectPeaks`: remove localMaxima argument. * `detectPeaks`: replace noise argument by fun. * `removeBaseline`: replace baseline argument by fun. * `labelPeaks`: use par("usr") to calculate default verticalOffset. * `labelPeaks`: add absoluteVerticalPos argument. * `plot`: change "sub" for merged spectra/peaks. * `intensityMatrix`: remove argument replaceByNa. * `determineWarpingFunctions`, `warpMassSpectra`, `warpMassPeaks` now require lists as arguments and return a list. * `calibrate`: works only on matrices now. * Replace all `lapply` calls by new methods in demonstration scripts. * Allow only numeric values for `intensity<-` and `mass<-`. * Rename `findLocalMaxima` to `.findLocalMaxima` and hide by NAMESPACE. * Rename dataset spectra in fiedler2009subset. * Remove peaks dataset. CHANGES IN MALDIquant VERSION 1.0 [2012-03-28]: ----------------------------------------------- NEW FEATURES * Add demonstration scripts. * Add functions: `binPeaks`, `determineWarpingFunctions`, `filterPeaks`, `isMassObject`, `isMassPeaks`, `isMassSpectrum`, `mergeMassPeaks`, `mergeMassSpectra`, `referencePeaks`, `warpMassPeaks`, `warpMassSpectra`. MODIFICATIONS * Change NAMESPACE. * Hide `imputeMass` method because it fails on Bruker Daltonics' CompassXport 32bit output. * Add \keyword{internal} to estimateBasline*-functions.Rd. * `labelPeaks`: rename massTolerance argument to tolerance. * Replace dataset sA1/pA1 by spectra/peaks (containing 16 example spectra). CHANGES IN MALDIquant VERSION 0.5 [2012-01-18]: ----------------------------------------------- NEW FEATURES * Add `imputeMass` method. IMPROVEMENTS * Rewrite intensityMatrix function (little speed improvement). CHANGES IN MALDIquant VERSION 0.4 [2011-08-04]: ----------------------------------------------- NEW FEATURES * Add functions: `isMassObjectList`, `isMassPeaksList`, `isMassSpectrumList`, `findEmptyMassObjects`, `removeEmptyMassObjects`, `intensityMatrix` and `calibrate` (only TIC supported up to now). * Add mass and massTolerance argument to `labelPeaks`. IMPROVEMENTS * Change default value for verticalOffset argument in `labelPeaks`. * Add pA1 dataset. MODIFICATIONS * Rename AbstractMassSpectrumData to AbstractMassObject. CHANGES IN MALDIquant VERSION 0.3 [2011-05-28]: ----------------------------------------------- NEW FEATURES * Add `transformIntensity`, `estimateNoise`, `findLocalMaxima`, `detectPeaks` and `points` method. * Add `createMassPeaks` constructor. IMPROVEMENTS * Replace `.estimateBaselineMovingEstimator` by `.estimateBaselineMedian` (uses `runmed` instead of an own slow `movingEstimator` function). MODIFICATIONS * Rewrite `labelPeaks` (some arguments changed). * Rename SingleSpectrum class to MassSpectrum. * Rename SinglePeakList class to MassPeaks. * Remove fdrtool dependency and rewrite `.estimateBaselineConvexHull` in C. * Move importing functions to the following R-packages: readBrukerFlexData, readMzXmlData. BUGFIXES * change `.C(..., DUP=F)` to `.C(..., DUP=T)` in `.estimateBaselineSnip` to avoid changes of global variables. CHANGES IN MALDIquant VERSION 0.2 [2011-03-29]: ----------------------------------------------- * Add baseline correction algorithm SNIP (implemented in C) [default]. * Add MovingEstimator and ConvexHull baseline estimation algorithm. * Add `as.matrix`, `intensity`, `length`, `lines`, `mass` and `metaData` methods. * Add basic SinglePeakList class, adopt `plot` and `lines`, add `labelPeaks` (still useless). CHANGES IN MALDIquant VERSION 0.1 [2011-02-22]: ----------------------------------------------- * First public release. * Up to now only importing and plotting of a single mass spectrum are supported.