From ce2e18d3c15daf5f3a4eff75e5f0e6a09e66a649 Mon Sep 17 00:00:00 2001 From: Steffen Neumann Date: Tue, 6 Jun 2017 10:41:45 +0000 Subject: [PATCH] Squashed commit of the following: commit 3d03ef5433aca18593e4fc4ee126ca41dbf753a3 Merge: bafb6de 8c1220e Author: Johannes Rainer Date: Tue Jun 6 10:54:35 2017 +0200 Merge pull request #185 from sneumann/issue184 Fix issue #184 commit 8c1220eaf7f866572e726b11baaa7672c514c237 Author: jotsetung Date: Mon Jun 5 17:26:53 2017 +0200 Fix issue #184 - Add parameter sleep to the do_groupChromPeaks_density function to ensure backward compatibility with the old group.density code. commit bafb6de6bb3939a45b108865eac69ddaef7c4a51 Author: jotsetung Date: Wed May 31 13:04:34 2017 +0200 Fix some more typos and tidy roxygen text commit 5249622a585b8bea916c14a0683a158dd7210a2f Merge: ffc9e39 54cc415 Author: jotsetung Date: Wed May 31 12:45:50 2017 +0200 Merge branch 'devel' into xcms3 commit ffc9e39dd8570fa51e9c4abd1b99864bdd25b7fd Author: jotsetung Date: Wed May 31 12:42:36 2017 +0200 Fix for issue #181 - issue #181: isCentroided returns NA is there are too peaks in a spectrum. The methods in xcms (findChromPeaks,OnDiskMSnExp,CentWaveParam) check first whether the first spectrum is centroided, if an NA is returned isCentroided is called on all spectra and based on that the function determines whether the data set is centroided. commit 54cc4154926ec6123b237ce3a0433c1fef13e5e7 Merge: aabdf5c f9bbe42 Author: Johannes Rainer Date: Wed May 31 10:53:52 2017 +0200 Merge pull request #183 from stanstrup/patch-6 typos commit f9bbe4287ca6f1560e33fccaad63842b58d57dfd Author: Jan Stanstrup Date: Wed May 31 10:51:34 2017 +0200 typos commit aabdf5c29daddd60aae2c7b12512dcf1f6d5bc1c Merge: 4dfbc01 13f69c8 Author: Steffen Neumann Date: Sun May 28 18:56:31 2017 +0200 Merge branch 'biocdevel' into devel commit 4dfbc01c1ec656fed8e0d3a4e262193f1061ebb3 Author: jotsetung Date: Fri May 26 11:52:55 2017 +0200 Fix issue #180 commit 8dfccd382b73c3f772b4a80b7d2fbe38b57c0a96 Author: jotsetung Date: Fri May 26 08:56:17 2017 +0200 Update NEWS. commit d290cbeb8d57a69305f7f7315135fa26f6eb80b5 Merge: 56c43dd d2d4b7a Author: jotsetung Date: Thu May 25 17:17:59 2017 +0200 Merge branch 'devel' into xcms3 commit d2d4b7a2a18a9a1620eaa52e94dc81edb2c939e9 Merge: f11aac4 d9baa6c Author: Johannes Rainer Date: Thu May 25 16:31:59 2017 +0200 Merge pull request #178 from stanstrup/patch-4 scanrange was collapsed when the adjusted range was reported. commit d9baa6ca364f4dd197a9eedd361869cf0787dbc3 Author: Jan Stanstrup Date: Mon May 22 14:01:47 2017 +0200 scanrange was collapsed when the adjusted range was reported. ```r > scanrange=c(1,1400) > message("Provided scanrange was adjusted to ", scanrange) Provided scanrange was adjusted to 11400 > > > message("Provided scanrange was adjusted to ", scanrange[1]," - ", scanrange[2]) Provided scanrange was adjusted to 1 - 1400 > ``` commit 56c43ddfd7eece4fe58f1f81da66714bf23e32ef Author: jotsetung Date: Fri May 19 12:20:29 2017 +0200 Fix for issue #173 - Stitching of mzML files did not fill in mz and intensity values for the last spectrum. commit 95a8deadbc29b7433678cd35b05690961c99dd6c Author: jotsetung Date: Thu May 18 15:36:54 2017 +0200 Fix for issue #175 - Disable original xcms-preprocessing vignette. commit 36535df5d03137a1d3db62fbf7a9f85c7fdaf8a9 Author: jotsetung Date: Mon May 15 09:08:31 2017 +0200 Add extractMsData method (issue #120) - Add extractMsData to extract MS data (mz, rt, intensity duples) as a data.frame (related to issue #120). - Add related unit tests and documentation. commit b273693c627451f470d1c5a91c435f384ce9cdf7 Author: jotsetung Date: Fri May 5 13:21:14 2017 +0200 Fix for bug introduced into plotChromPeakDensity commit ad6aa2bf4bec129147c1407d0325f531dcf1fcb0 Author: jotsetung Date: Fri May 5 13:03:00 2017 +0200 Add Jan Stanstrup's fix also to the plotChromPeakDensity function commit 906be43e92aee5ac54b97ee795ada7848cbae5c5 Author: jotsetung Date: Fri May 5 13:00:30 2017 +0200 Update news. commit 11ed73c97b5c1ea28354172da7f639eff85bae38 Merge: e90b74e f11aac4 Author: jotsetung Date: Fri May 5 12:59:04 2017 +0200 Merge branch 'devel' into xcms3 commit f11aac4020319d991b845154e492f1031f946888 Author: jotsetung Date: Fri May 5 12:43:06 2017 +0200 Fix problem with merge from Jan Stanstrup - Remove definitions of argument n in density functions other than in do_groupChromPeaks_density: fixes errors in the vignette. - Fix issue #161. commit 9129650cdba019bcacba62441d2623e50168a498 Merge: 77c51a4 60ff595 Author: Johannes Rainer Date: Fri May 5 11:14:26 2017 +0200 Merge pull request #162 from stanstrup/patch-5 fixes for #161: increase parameter `n` in `density` function calls for *peak density* correspondence. commit e90b74e3c30bdf3860b475b549db6fdb158ecd60 Author: jotsetung Date: Fri May 5 11:10:57 2017 +0200 Remove un-needed functions from functions-XCMSnExp.R commit 77c51a444c14b962c54b3ca6c0eabc7dd3f7c2f8 Merge: 14e701c cf3a862 Author: Steffen Neumann Date: Fri May 5 09:49:28 2017 +0200 Merge branch 'biocdevel' into devel commit 58e35e588c0f4654f013f06933356b0d232f1f99 Author: jotsetung Date: Fri May 5 09:41:03 2017 +0200 Add plotChromPeakDensity function (issue #171) - Add the plotChromPeakDensity function to evaluate peak density correspondence settings. - Add related unit tests and documentation. commit 9de2927231f6c92fe600381ec5f3758093dd642d Author: jotsetung Date: Tue May 2 09:32:25 2017 +0200 Add new clean,Chromatogram method - Add new clean,Chromatogram method. - Add related unit tests and documentation. commit f7719b8d4c8a04cc2bc349802c309441e3fee382 Author: jotsetung Date: Thu Apr 27 22:18:33 2017 +0200 Fixes to the extractChromatograms method - Ensure that the returned lists per rt/mz range have the same lengths than there are files. - Return a Chromatogram object of length equal to the number of scans within the specified retention time range, even if no measurement is available for the provided mz range (report NA_real_). - Add parameter missing to the extractChromatograms method to allow specifying the intensity value to be used if no signal was measured for a rt in the specified mz range. commit 20c7e9e048d8117733f8af7309307308262ee563 Author: jotsetung Date: Wed Apr 26 08:12:47 2017 +0200 extractChromatograms extracts multiple ranges - extractChromatograms extracts multiple ranges to enable efficient chromatogram extraction without re-reading the raw data (issue #168). - Add corresponding unit tests and documentation. - Fix in plotChromatogram to avoid warnings if the number of measured data values differs between files (issue #167). - Extend new_functionality vignette. - Disable parallel processing in preprocessing vignette. commit 77b0396c54e2afe61de1df09271ec1ce427781e3 Author: jotsetung Date: Fri Apr 21 15:25:27 2017 +0200 Fix bug in plotChromatogram commit 612cecfc868a55b94c43cf01d16b15ea6c56418c Author: jotsetung Date: Fri Apr 21 14:27:48 2017 +0200 Ensure plotChromatogram doesn't break if no data available commit af6eea822cb9edb1d9d979289617b022b6947584 Author: jotsetung Date: Fri Apr 21 09:20:35 2017 +0200 Add plotChromatogram and highlightChromPeaks functions - Add plotChromatogram and highlightChromPeaks functions (issue #167). - Add documentation. commit d045d708e1802f81e54a307220d19e0b18253a61 Author: jotsetung Date: Wed Apr 19 09:57:22 2017 +0200 Fix validation method for CentWaveParam if roiList is provided commit 14e701ce3e3c0f271bb7f6f38a678f132d007442 Merge: f775cbb 84a5375 Author: Steffen Neumann Date: Fri Apr 14 19:20:26 2017 +0200 Merge branch 'biocdevel' into devel commit f775cbb7336e160ff7157d5e897c5cd1a0e93d8c Merge: aa9f1d3 30bb9b2 Author: jotsetung Date: Thu Apr 13 18:59:42 2017 +0200 Merge branch 'xcms3' into devel commit 30bb9b270ff90a4a54b8e752f3abf8dd609ee811 Author: jotsetung Date: Thu Apr 13 18:57:46 2017 +0200 Update date commit 9d507248152612eabc049cd887f838aa525545d9 Author: jotsetung Date: Thu Apr 13 13:22:42 2017 +0200 Avoid fillPeaks using deprecated API (issue #163) - Implement .getPeaks_new that does no longer depend on deprecated profFun calls. - Change getPeaks to use by default the new .getPeaks_new function (fixes fillPeaks issue #163). - Add corresponding unit tests. commit 60ff5957cf9ef6a7729710eb2fdb823209fa8d62 Author: Jan Stanstrup Date: Tue Apr 11 11:01:47 2017 +0200 additional fixes for #160 commit 959004a09888b236111bc0ef5a9f829a5558c174 Author: Jan Stanstrup Date: Tue Apr 11 10:57:25 2017 +0200 devel patch for # 160 commit 0b26f47f3bb48080c5691af82631e176e6312018 Author: jotsetung Date: Mon Apr 10 08:24:36 2017 +0200 Fix possible memory problem in obiwarp (issue #159) - Fix issue #159. - Add example on how to inspect raw peak data in the new user interface (issue #155). commit a7cc281eae4013c691afacccaf010596756266b6 Author: jotsetung Date: Fri Apr 7 08:06:22 2017 +0200 Update documentation of fillPeaks.chrom - Update the documentation of fillPeaks.chrom. - Display message if nSlaves is used suggesting to use BPPARAM instead (issue #158). commit 00786dab2f8d73ad9fdf45f17da28d8f024fe89c Author: jotsetung Date: Thu Apr 6 08:04:07 2017 +0200 Clean up imports and dependencies - Import specific functions from Biobase instead of the full package. - Move packages from Depends to Imports. commit e4a970e93d8a1c14baf920684bfae5e2f9ea91cd Author: jotsetung Date: Wed Apr 5 06:29:26 2017 +0200 Add parameters mz, rt, ppm and type to chromPeaks (issue #156) - Add parameters mz, rt, ppm and type to the chromPeaks method to enable extracting chromatographic peaks from the specified range(s). - Add related documentation and unit tests. - Documentation tidying. commit 7fcc690bbc484805528151e26434cd806d244ce4 Author: jotsetung Date: Tue Apr 4 16:56:34 2017 +0200 Add parameter "filled" to featureValues - Add parameter filled to the featureValues,XCMSnExp method (issue #157). - Add related unit tests and documentation. commit aa9f1d3e5241cc22c7ade7165c168bdfb6399e8d Merge: 828883b ecbe9a7 Author: Steffen Neumann Date: Fri Mar 31 13:58:31 2017 +0200 Merge branch 'biocdevel' into devel commit 828883b412f7973f10eacbd58eac2744500ecb13 Author: jotsetung Date: Fri Mar 31 07:50:44 2017 +0200 Updates to the vignette commit cbe41fac512d7ed267b3d1a36bccb023fe776615 Author: jotsetung Date: Thu Mar 30 13:03:59 2017 +0200 Add the plotAdjustedRtime function (issue #141) - Add the plotAdjustedRtime function to visualize alignment results (issue #141) - Add corresponding documentation, unit tests and examples. - Code tidying. - Include plotAdjustedRtime to vignette. commit 592ecdc097dfa72fc92027df46133144d387394b Author: jotsetung Date: Thu Mar 30 09:02:12 2017 +0200 Support predefined peak group matrix for peak groups alignment - Support peak groups-based alignment using a pre-defined peak groups matrix (issue #153). - Add related unit tests and update documentation. commit 985c051ebdd6a7c7f9fe86c19b0616e32458e2c1 Author: jotsetung Date: Wed Mar 29 22:01:07 2017 +0200 Add peakGroupsMatrix slot to PeakGroupsParam class - Add peakGroupsMatrix slot to the PeakGroupsParam class (issue #153). - Add related unit test and update documentation. commit 2ec98ddfef91ebaf5e9f10d51cc44b94647e4dbb Author: jotsetung Date: Wed Mar 29 14:38:15 2017 +0200 Remove private 'isSeizmo' massifquant function. - Remove the private isSeizmo function from massifquant's C++ code (issue #149). commit 0b97c0d38ab8a874a25ce260adbd5c0631898a9b Author: jotsetung Date: Tue Mar 21 09:53:00 2017 +0100 Add adjustRtimePeakGroups function (issue #147) - Add adjustRtimePeakGroups function for XCMSnExp that returns the peak groups that would be used for a given PeakGroupsParam parameter object. - Add related documentation and unit tests. commit 59f1f4940517517f5b3aa324d1ce55ee2c45541a Author: jotsetung Date: Mon Mar 20 17:23:16 2017 +0100 Use feature IDs as rownames in featureValues and featureDefinitions - Add arbitrary feature IDs as rownames to the featureDefinitions DataFrame and use these also for the matrix returned by featureValues (issue #148). - Add related documentation and unit tests. commit 6b52f86e267846e637411fbaddc5e6271230ef81 Author: jotsetung Date: Fri Mar 17 16:25:03 2017 +0100 Add filterRt,Chromatogram method - Add a filterRt,Chromatogram method (issue #142). - Add related unit tests and documentation. commit 0e0a9909d3f684a923c4454b4e64d2dc9a8d8aad Author: jotsetung Date: Fri Mar 17 15:21:13 2017 +0100 Ensure correct ordering of values in Chromatogram constructor o Order intensity and retention time values by retention time if not increasingly ordered in the Chromatogram constructor (issue #145). commit d2f3d141558585e5df094d64876b84f1a8749666 Author: jotsetung Date: Fri Mar 17 08:06:52 2017 +0100 Change order of alignment and correspondence in XCMSnExp,show commit f8148d567b9e2f406755f27149334a103f0b23b4 Author: jotsetung Date: Wed Mar 15 16:22:03 2017 +0100 Fix unordered adjusted retention times in peakGroups o Fix adjustRtime,XCMSnExp,PeakGroupsParam to return for some data adjusted retention times that are not in the same order than raw retention times (issue #146). commit c697bfd54397f856207769ce28a7b75794402379 Author: jotsetung Date: Wed Mar 15 09:15:54 2017 +0100 Ensure adjusted and raw retention times to be in the same order o For adjustRtime,XCMSnExp,PeakGroupParam ensure that adjusted retention times are in the same order than the raw retention times (issue #146). o Show warning if adjusted retention times have to be re-adjusted accordingly. o Show warning if adjusted retention times are not ordered. commit 2b66b28e3905618f7543a6b4b44176ca6bbebf6d Merge: b4c4885 dfe23f3 Author: jotsetung Date: Tue Mar 14 15:53:49 2017 +0100 Merge branch 'devel' into xcms3 commit b4c48850e6976bc599fc02bb5d224bd69ae370b6 Author: jotsetung Date: Tue Mar 14 15:52:07 2017 +0100 Show warning if order of adjusted retention time is not increasing o Show a warning message if the adjusted retention times for a file are not ordered increasingly (issue #146) commit dfe23f315235d0ac965b712de2cd995f54204ec0 Merge: ed89456 215409c Author: Steffen Neumann Date: Fri Mar 10 23:09:00 2017 +0100 Merge branch 'biocdevel' into devel commit e8dbb4c094b0cbaa6a962320047f941f52474207 Author: jotsetung Date: Fri Mar 10 22:02:31 2017 +0100 Avoid multiple/nested parallel processing - Avoid multiple/nested parallel processing calls (issue #144). - Documentation update with newer roxygen2 package. commit ed8945662d82612911bcdbf4be3333ea750d1ef6 Author: jotsetung Date: Fri Mar 10 11:12:53 2017 +0100 Change default backend for mzML files to pwiz (issue #143) commit cf6b1bca8d966a9bc2ffc34d68bfedb76c4eeb93 Author: jotsetung Date: Thu Mar 9 17:04:16 2017 +0100 Remove debug centWave version debug message commit e9f39ecd6540aae7ba4a438d9ca8b26a1e8e80ff Author: jotsetung Date: Wed Mar 8 08:44:30 2017 +0100 Extend new_functionality vignette. commit 572f2ebe0d840929dc4db7fb671f9a54016f7861 Author: jotsetung Date: Tue Mar 7 12:51:15 2017 +0100 Add fillChromPeaks for matchedFilter peak detection o Add support for matchedFilter identified peak in fillChromPeaks,XCMSnExp (issue #130). o Add related documentation and unit tests. commit 6af52f4458663c40fba939044ce5f24c9c8de49c Author: jotsetung Date: Mon Mar 6 14:35:01 2017 +0100 Remove commented old matchedFilter test functions. commit e899b923086b8c540f26a0b1fdb468eb0cd701a3 Author: jotsetung Date: Mon Mar 6 13:43:58 2017 +0100 Ensure XCMSnExp compatibility for single spectrum MS data o Check XCMSnExp on single spectrum direct injection MS data (issue #106). o Add related unit tests. commit 5c6454c1f53da31e898c393a3181465229726e8a Author: jotsetung Date: Mon Mar 6 12:27:36 2017 +0100 Support peak filling for direct infusion data o Add support for MSW identified peaks of single spectra, direct infusion data in fillChromPeaks,XCMSnExp. o Add documentation and related unit tests. commit 889caf0f3ba0188646868d493ee0ba6dc3d9d9bb Author: jotsetung Date: Fri Mar 3 13:58:52 2017 +0100 Extend show method for XCMSnExp commit c9c061fd76e883d33431830a4277d721678af060 Author: jotsetung Date: Fri Mar 3 13:36:52 2017 +0100 Fix expand.rt and expand.mz in fillPeaks (issue #139) commit e51387f7cc7ec952ad258b4b9bd6d46897e582e3 Author: jotsetung Date: Fri Mar 3 13:09:54 2017 +0100 Add featureValues method for XCMSnExp o Add featureValues method for XCMSnExp (issue #131). o Add related unit tests and documentations. commit f7c0547dc6b422d8980b159710a56e4debc04be5 Author: jotsetung Date: Fri Mar 3 12:26:31 2017 +0100 Add dropFilledChromPeaks method o Add dropFilledChromPeaks method (issue #140). o Add related documentation and unit tests. commit e48e977a2e50943e8d41d011515e985362014768 Author: jotsetung Date: Fri Mar 3 10:41:43 2017 +0100 Add @filled slot for XCMSnExp to xcmsSet conversion commit 083fd4b2594ae8e5703ca04ca527ff6a12453fa4 Author: jotsetung Date: Fri Mar 3 10:35:40 2017 +0100 Add fillChromPeaks method and FillChromPeaksParam class o Add fillChromPeaks method and FillChromPeaksParam class. o Add related unit tests and documentation. commit b1b430239a2c5e4e7dda3777e442535f474f5ead Author: jotsetung Date: Thu Mar 2 13:12:28 2017 +0100 o Remove debug messages from xcmsSet. commit d469000b45403204e8796dd1de0dd07fabf7e32c Author: jotsetung Date: Wed Mar 1 15:26:33 2017 +0100 Add modified centWave function and various fixes o Add modified centWave function that integrates peak intensity using only signal within the peak area (issue #136). o Fix error in findChromPeaks if no peaks were found (issue #137). o Fix for failing unit test checking break definition functions (issue #118). commit c821b33adea47101f8e4044ddc3e66b11764665f Merge: 8e44a7b e4b4f89 Author: jotsetung Date: Mon Feb 27 22:11:31 2017 +0100 Merge branch 'devel' into xcms3 commit 8e44a7bb32b532da9fc86c07a7676c1223a6acd5 Author: jotsetung Date: Mon Feb 27 18:47:34 2017 +0100 Update NEWS commit 2d670e210408e778cd896553632e0e9b3969b0ac Author: jotsetung Date: Sun Feb 26 22:12:49 2017 +0100 Fix for issues #118 #133 #134 o Disable part of failing unit test for issue #118 - try to reproduce on a windows build machine o issue #134: show information message if no files are provided showing the directory in which files are listed and the number of found files. o issue #133: don't re-index samlples if no peaks were identified. commit e4b4f8951ae599f3764d29372c23d3dbcc64cd57 Merge: 861e938 d421682 Author: Steffen Neumann Date: Fri Feb 24 22:12:22 2017 +0100 Merge branch 'biocdevel' into devel commit 78a98b1e8c2612a847382ff741da49a90786c6c0 Author: jotsetung Date: Fri Feb 24 08:38:39 2017 +0100 Add columne "is_filled" to chromPeaks matrix commit 1743262d1d03865461bc489bf76fc0a566608f4e Author: jotsetung Date: Thu Feb 23 18:58:44 2017 +0100 Add findChromPeaks for XCMSnExp objects (issue #128) commit 8068dbeb2d955121179c6974b94c6aa7d7b0d610 Author: jotsetung Date: Thu Feb 23 13:26:21 2017 +0100 Rename parentMz in Chromatogram to precursorMz o Rename Chromatogram class slot parentMz into precursorMz to fit with the IUPAC definition. commit b358862912447e017ad9b9406cbe369abc357aae Author: jotsetung Date: Thu Feb 23 08:02:13 2017 +0100 spectra,XCMSnExp returning adjusted rtime (issue #129) o spectra,XCMSnExp returns adjusted rtime within the Spectrum objects, if such retention times are present in the XCMSnExp object. o Add related documentation and unit tests. commit 861e93805afcf2da1add7adfde71e403333c8fe0 Author: jotsetung Date: Wed Feb 22 11:06:19 2017 +0100 Fix issue #127: failing unit test on tokay2 build machine commit 2ae5eafdebe4c225d3a1de7b194a89093507d109 Author: jotsetung Date: Wed Feb 22 10:52:34 2017 +0100 Rename methods, functions and objects (issue #126) o Rename most of the methods from the new user interface to follow a common nomenclature. commit 009e57a15b6a2969d460144bec30b2b098485377 Author: jotsetung Date: Wed Feb 15 09:39:04 2017 +0000 Ensure memory cleanup in parallel findPeaks for xcmsSet commit 6da82fc146eb80e3058ce56cfe2bc536818fce82 Author: jotsetung Date: Wed Feb 8 12:15:02 2017 +0100 Minor changes to Chromatogram o Don't export Chromatogram. commit c4bca930c1f897e1fe3b3db6c01cfb6f7c456d27 Author: jotsetung Date: Mon Feb 6 08:27:36 2017 +0100 Add Chromatogram class o Add Chromatogram class (related to issue #120). o Add methods, unit tests and documentation. commit f6e169fbfbfe9ac9ee83d6677317def6b2714b8a Merge: b0deb92 84eee36 Author: Steffen Neumann Date: Fri Feb 3 09:59:01 2017 +0100 Merge branch 'biocdevel' into devel commit b0deb92a9b8df81fe7b2ea6e2129ae46bc282cfa Author: jotsetung Date: Fri Feb 3 09:20:54 2017 +0100 Bump version and update NEWS. commit 70040008b630ede4a8c5ff569fce27bf798a4616 Author: jotsetung Date: Fri Feb 3 08:40:41 2017 +0100 Fix issue #124 o Fix issue #124: filterRt,XCMSnExp returns empty object. o Extend unit tests for above fix. commit 2f1add71e4440547b006c5534ba10328f8f8feef Author: jotsetung Date: Thu Feb 2 18:48:02 2017 +0100 Bump version. commit 0c9b416ea9128ecbbce3ce567a71d7462b776cdb Author: jotsetung Date: Thu Feb 2 18:45:06 2017 +0100 Small internal changes. commit 09eb5e3f5e784157e8b50e159cef9c05cf725bc8 Author: jotsetung Date: Thu Feb 2 15:21:15 2017 +0100 Small code cleanup. commit 00fd415e0b14070b3bf9a417283b98a9a888c065 Author: jotsetung Date: Thu Feb 2 15:01:58 2017 +0100 Update NEWS. commit 806d79351a46d5369d2e056010ca33f6d7c5d5f4 Merge: 2d2ecf8 6e0381e Author: jotsetung Date: Thu Feb 2 14:48:35 2017 +0100 Merge branch 'devel' into xcms3 commit 2d2ecf85d66ce24309499c60834448694ac5eb60 Author: jotsetung Date: Thu Feb 2 14:18:48 2017 +0100 Fix unit test error on R-3.2.3 commit 7720ea5c0de35552ca8c25e782e1e9df7ab47023 Author: jotsetung Date: Thu Feb 2 12:20:49 2017 +0100 filterRt filtering by default on adjusted rt if available o Fix filterRt to filter on adjusted retention times if available. o Fix filterRt to filter features correctly for adjusted = FALSE. o Extend unit tests to ensure proper functionality. o Extend documentation. commit 7aeee29b3eaddceae9ba613083162b0a5066b6c7 Author: jotsetung Date: Thu Feb 2 07:28:23 2017 +0100 rtime,XCMSnExp reports by default adjusted rt o rtime,XCMSnExp method reports by default, if present, adjusted retention times (issue #123). o Add/fix related unit tests and adapt documentation. o Extend other documentations. commit 079836e67c1bb607759bd51e17edee66230cfb3a Author: jotsetung Date: Wed Feb 1 10:54:21 2017 +0100 Add groupval,XCMSnExp method (issue #114) o Add the groupval,XCMSnExp method. o Add documentation and unit tests. commit 359ad1c2492c0c3b334de29297465284b3eaa226 Author: jotsetung Date: Wed Feb 1 06:25:58 2017 +0100 Add adjustRtime,XCMSnExp,ObiwarpParam (issue #119) o Add adjustRtime obiwarp alignment for XCMSnExp and OnDiskMSnExp. o Add documentation and unit tests. commit d4ceb5f5fbae010575cf76f7ffffe130093639d3 Author: jotsetung Date: Mon Jan 30 09:10:53 2017 +0100 Tentative fix for issue #118 o Using checkEquals instead of checkIdentical on the failing unit test. commit d6df84b9c3ab052fc20d7591fb9d4a39de4db793 Author: jotsetung Date: Mon Jan 30 09:05:51 2017 +0100 Add ObiwarpParam class (issue #119) o Add the ObiwarpParam class. o Add related documentation and unit tests. commit 940fecdcc931cdc83b0011b6299b56affc3e5e98 Author: jotsetung Date: Fri Jan 27 06:56:51 2017 +0100 Implement profMat method for XCMSnExp and OnDiskMSnExp o Implement the profMat method for OnDiskMSnExp and XCMSnExp objects (issue #115). o Add related documentation and unit tests. commit 98b53f3ceff0b26c2ff9afc091cba73a8705442f Author: jotsetung Date: Wed Jan 25 14:59:47 2017 +0100 Use do_adjustRtime_featureGroups in retcor.peakgroups o Modify the retcor.peakgroups method to use the do_adjustRtime_featureGroups to perform the retention time correction (issue #111 and #112). o Add related unit test to compare to the original code. commit 4a2d9659ba665e0d3a5f032257666a703846db5f Author: jotsetung Date: Wed Jan 25 13:45:03 2017 +0100 Add adjustRtime,XCMSnExp,FeatureGroupsParam method o Add the retention time adjustment equivalent to retcor.peakgroups (issue #112). o Add related unit tests and documentation. o Enhance and fix the dropFeatures, dropFeatureGroups and dropAdjustedRtime methods and the features<-, featureGroups<- and adjustedRtime<- methods (see issue #113). o Add related documentation and unit tests. commit 569dff0f2a4148e04f0d2a83419d0b0f858ecbbe Author: jotsetung Date: Tue Jan 24 15:06:07 2017 +0100 Add FeatureGroupsParam object (issue #112) o Add FeatureGroupsParam object. o Add related unit tests and documentation. commit 1f866da1b7f80d91e35f16ca4b1ab055d3c2cc3e Author: jotsetung Date: Tue Jan 24 12:54:05 2017 +0100 Add documentation and unit test for do_adjustRtime_featureGroups o Add documentation and unit test for do_adjustRtime_featureGroups (issue #111). commit 27c382a2d9ed436a8071b38bebed7d24703568e7 Author: jotsetung Date: Tue Jan 24 12:18:08 2017 +0100 Amend ordering of peak goups in retcor.peakgroups (issue #110) commit 5d602d2185665c9feac159dacda58fdbaa36bfed Author: jotsetung Date: Tue Jan 24 09:18:34 2017 +0100 Add the do_adjustRtime_featureGroups function o The do_adjustRtime_featureGroups function performs retention time correction with the peakgroups method. Issue #111. commit 6c005cf0ea4346a124569a0e79015a6722136b8a Author: jotsetung Date: Fri Jan 20 16:26:56 2017 +0100 Remove commented code. commit 9b88134182343a19992fe99100d39c0c62b9242b Author: jotsetung Date: Fri Jan 20 16:13:21 2017 +0100 Add groupFeatures,XCMSnExp,NearestFeatures method (issue #108) o Add the groupFeatures,XCMSnExp,NearestFeatures method. o Add related unit tests and documentation. commit 73311ba4e6b4417f48d00a327168e2b5c47c3ca0 Author: jotsetung Date: Fri Jan 20 15:32:50 2017 +0100 Add NearestFeaturesParam class (issue #108) o Add the NearestFeaturesParam class with all methods and functions. o Add related documentation and unit tests. commit dde4b3a9d585c33bc91c2705b696e53a2a73d21d Author: jotsetung Date: Fri Jan 20 13:15:36 2017 +0100 Fix warnings in group.nearest (issue #109) commit ec0daf60ed1c6d01e696dc7e927c25d10b651912 Merge: 8fd3010 8312b64 Author: jotsetung Date: Fri Jan 20 11:10:29 2017 +0100 Merge branch 'xcms3' of https://github.com/sneumann/xcms into xcms3 commit 8fd301034eefa35e87dbbccb47aec86643e79297 Author: jotsetung Date: Fri Jan 20 10:38:28 2017 +0100 Add do_groupFeatures_nearest function (issue #103) o Add the do_groupFeatures_nearest function. o Add unit tests and documentation. commit 8312b6469d37fc923c0cd6ac6bc1a17bcd4eec59 Author: jotsetung Date: Fri Jan 20 10:38:28 2017 +0100 Add do_groupFeatures_nearest function (issue #103) o Add the do_groupFeatures_nearest function. o Add unit tests and documentation. commit 848b6c21d1fcd6bab86a669c78de1a3a3594d445 Author: jotsetung Date: Thu Jan 19 16:02:03 2017 +0100 Add groupFeatures,XCMSnExp,MzClustParam (issue #107) o Add groupFeatures,XCMSnExp,MzClustParam method. o Add documentation and unit tests. commit 8f4230089e538631d87bc30b45c0b1c5a640e474 Author: jotsetung Date: Thu Jan 19 14:43:22 2017 +0100 Add MzClustParam class and smaller bug fixes o Add the MzClustParam class along with all required methods (issue #107). o Add unit tests and documentation. o Add support for R-3.2.3: fix problems with S4Vectors and sort method. commit a98f9fb67ec76eb9cc6905533f50b9e60f9a65c4 Author: jotsetung Date: Wed Jan 18 16:13:45 2017 +0100 Fix order issue (issue #180 in MSnbase) o Remove argument 'method' from any calls to order to ensure backward compatibility. commit 5c11a30aeef599220a8a87188fb8e50552beb19f Author: jotsetung Date: Wed Jan 18 06:55:23 2017 +0100 Add do_groupFeatures_mzClust function (issue #103) o Add the do_groupFeatures_mzClust function. o Add unit tests and documentation. commit 797ec556f78cb3e241a8bccd90f06c615126170d Author: jotsetung Date: Tue Jan 17 15:53:54 2017 +0100 Add groupFeatures,XCMSnExp,FeatureDensityParam method o Add the groupFeatures,XCMSnExp,FeatureDensityParam method to perform the feature alignment using the density method (issue #105). o Add unit test and documentation. commit 900c1d14f6343c2da8f3cf7515e8c77d9ac0bf0c Author: jotsetung Date: Tue Jan 17 14:06:35 2017 +0100 Add FeatureDensityParam class (issue #105) o Add the FeatureDensityParam class, all related methods and functions. o Unit tests and documentations for FeatureDensityParam. commit bb2f22a0f092d99527dde11c7c8fc99145979d6b Author: jotsetung Date: Tue Jan 17 11:01:24 2017 +0100 Parallel version of the do_groupFeatures_density implemented o Function implemented but not exported - no performance increase with the parallel version. commit 458b9e353ea184d861d21e27ce08fcefe300cce9 Author: jotsetung Date: Tue Jan 17 10:19:10 2017 +0100 Replace code in group.density with do_groupFeatures_density (#103) commit 9edb01c2d9986d15d48d65ce95ed00edc86901bc Author: jotsetung Date: Tue Jan 17 09:22:08 2017 +0100 Add do_groupFeatures_density function o Add the first feature alignment core API function: do_groupFeatures_density: issue #103. o Add unit tests and documentation. commit 6e0381eef656d2f32fa8d3affabd2a9f995bfc38 Merge: 87a57f1 283023b Author: Steffen Neumann Date: Tue Jan 17 08:28:38 2017 +0100 Bump version and adapt NEWS commit 87a57f1c4d1ab4da77093dc529ed4def9b1bc0e2 Merge: 5e288f4 62452c2 Author: Steffen Neumann Date: Mon Jan 16 22:57:21 2017 +0100 Merge remote-tracking branch 'origin/xcms3' into devel commit 5e288f41000a7aab07e2b0e4cc61232fb7baa1f3 Merge: a4421c3 4c6815a Author: Steffen Neumann Date: Mon Jan 16 22:57:07 2017 +0100 Merge branch 'biocdevel' into devel commit 62452c2b5204f515e57579aaa8c614173c44750b Author: jotsetung Date: Mon Jan 16 12:57:22 2017 +0100 Removed , in DESCRIPTION commit bdc3d65b646447f4b7fef7ba650623d2bcacb87f Author: jotsetung Date: Fri Jan 13 21:28:54 2017 +0100 Add spectrum,XCMSnExp method and increase method robustness o Add spectrum,XCMSnExp method to extract spectra grouped by samples (bySample parameter). Issue #96. o Ensure robustness of methods with a bySample parameter: the returned list has always the same length as there are files, with elements being empty if no e.g. mz values are present for a specific file (because it got e.g. filtered). commit d8e9a21f1ed58e0167e68164c2b98f48e0f826fb Author: jotsetung Date: Fri Jan 13 13:33:54 2017 +0100 Fix issue #102 commit 95f5c30fdd727e0419de928553121d204e032ae4 Author: jotsetung Date: Fri Jan 13 13:29:26 2017 +0100 Fix issue #91. o Replay the changes made by Jan Stanstrup. commit 839fdb369875f895c06d627dedbe5161e3600f2c Author: jotsetung Date: Fri Jan 13 13:17:31 2017 +0100 Fix issue #98 o Fix error in flagme vignette. Ensure that number of rows of the profile matrix is equivalent to what produced in the old code. Problem was that previously the mzrange of the xcmsRaw object was altered, i.e. represented rounded *real* mz range. The number of rows in the profile matrix were then equal to the length of the sequence seq(mzrange[1], mzrange[2], by = step). The new code however always ensures that the real max mz value is included, i.e. it produces one more bin in cases were in the old approach the max mz would have been floored (new code: always do ceiling). commit c602fef616c8060b196c00f933fe22c6ee289394 Author: jotsetung Date: Fri Jan 13 08:01:13 2017 +0100 Add bySample parameter to features,XCMSnExp o Add the bySample parameter to the features,XCMSnExp method allowing to extract the feature matrices grouped by sample. commit f7053990d515702911850aa400908f4e5d7c5b14 Author: jotsetung Date: Thu Jan 12 16:21:50 2017 +0100 Fix for the last improvement of the issue #99 fix. commit 223798c30f8852d3c4696f4284facbe4152a08c8 Author: jotsetung Date: Thu Jan 12 07:58:19 2017 +0100 Update NEWS. commit 277324fec07683db2b08e09c0077ce243f9d327f Author: jotsetung Date: Thu Jan 12 07:53:47 2017 +0100 Improve fix for issue #99 o Only throw an error if the rtrange is completely outside the available rt. commit 707990ee9ae0f27e8d7e7fd3b5c8e6ef6048db90 Author: jotsetung Date: Wed Jan 11 08:28:01 2017 +0100 Method to coerce XCMSnExp to xcmsSet o Add setAs method to coerce XCMSnExp to xcmsSet (issue #100). o Add related unit tests and documentation. o Add examples for XCMSnExp usage. commit 9419493c8dda575dd6e74417e62d2c3a62989394 Author: jotsetung Date: Tue Jan 10 16:10:47 2017 +0100 Fix issue #101 o Fix the xcmsRaw function to not copy over MSn data if msleve = 1 is provided. commit 804e8bca6f6322b42ffa88467b1ff2e45038a819 Author: jotsetung Date: Tue Jan 10 09:15:50 2017 +0100 Add filterRt method for XCMSnExp o Implement the filterRt method for XCMSnExp objects that allows to filter the object by retention time. Subsets also features, featureGroups and adjusted retention time. Issue #96. commit 0bcb852e280294f0d58e016d69f1ad02c6368bbd Merge: 48055c0 7962641 Author: jotsetung Date: Mon Jan 9 16:01:17 2017 +0100 Merge remote-tracking branch 'refs/remotes/origin/xcms3' into xcms3 commit 48055c072e5589fa2fd3351b5a14de0b5bbc3a9b Author: jotsetung Date: Mon Jan 9 08:16:42 2017 +0100 Add bySample argument to adjustedRtime,XCMSnExp method o Add the bySample argument to the adjustedRtime,XCMSnExp method. commit 79626414dd15957ebec9d47c1dc18ccba9b85dab Author: jotsetung Date: Mon Jan 9 08:16:42 2017 +0100 Add bySample argument to adjustedRtime,XCMSnExp method o Add the bySample argument to the adjustedRtime,XCMSnExp method. commit 2e30a970c7e091bfdd575397985cfe1d985d0cca Author: jotsetung Date: Mon Jan 9 06:52:03 2017 +0100 Add mz, intensity and rtime methods for XCMSnExp o Add mz, intensity and rtime methods for XCMSnExp objects extending the corresponding methods for OnDiskMSnExp by adding the bySample parameter. commit 4aa10f595f103f2f8a7ef9b080a4407b3a41dd3a Author: jotsetung Date: Fri Jan 6 22:24:13 2017 +0100 Use drop* methods to remove preprocessing results o Use the drop* methods to remove preprocessing results from XCMSnExp objects. commit 8f1fc5cba7ea93c47ff60bdc76a5799693d09249 Author: jotsetung Date: Tue Jan 3 18:29:41 2017 +0100 Add sort method option o Add sort method option that defaults to "auto" on R versions < 3.3. See https://github.com/lgatto/MSnbase/issues/180 for more info. commit 6ae59333718b341ce3b40ec74b4e83007e975ed4 Author: jotsetung Date: Mon Jan 2 21:22:48 2017 +0100 Fix failed execution of unit tests commit a1122065a96cf6e69088417d82fe987cda188cd5 Author: jotsetung Date: Fri Dec 30 21:57:02 2016 +0100 Add drop methods o Add dropFeatures, dropFeatureGroups and dropAdjustedRtime for XCMSnExp and MsFeatureData objects to remove the corresponding results. o Remove obsolete Rd files. commit 477f0db3fd58f0aedef21e06d062b2f19e86f5c2 Merge: e92a02d a4421c3 Author: jotsetung Date: Sun Dec 25 18:49:49 2016 +0100 Merge branch 'devel' into xcms3 commit e92a02d2b0bb24bb9c58b615879f430fa35a9b61 Author: jotsetung Date: Fri Dec 23 15:27:37 2016 +0100 Implement filterMz method for XCMSnExp o Add the filterMz method for XCMSnExp that allows filtering on an mz value range. features and featureGroups are retained if they are completely within the mz range. Adjusted retention time is not altered. o Add unit tests and documnentation. commit 6dec3689c906b8557ebfe3bee91c1592e22852a2 Author: jotsetung Date: Fri Dec 23 14:04:37 2016 +0100 Fix problem reading MS2-only files. o Fix issue https://github.com/MassBank/RMassBank/issues/174 commit 9c9319da5bd9be139648680805fb59d175a4abea Author: jotsetung Date: Fri Dec 23 12:29:03 2016 +0100 Implement some of the methods inherited from OnDiskMSnExp o Implement all data manipulation methods from OnDiskMSnExp for XCMSnExp class (issue #96). All drop xcms pre-processing results. o Implement filterFile for XCMSnExp, does subset identified features. o Add documentation and unit tests. commit a4421c35caef0aaee129a222c128c99c25b218a5 Merge: 62932b7 1ddbb89 Author: Steffen Neumann Date: Fri Dec 23 12:01:16 2016 +0100 Merge branch 'devel' of github.com:sneumann/xcms into devel commit 62932b77c7407c04ed0d49bbe7d7ad2cf82371f0 Author: s.neumann Date: Fri Dec 23 11:00:28 2016 +0000 added deepCopy to avoid corrupting the original object, thanks to J. Stanstrup, closes #93 git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@125419 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 2ab8350f93056ba300eee06b7ef14212bd65ceaf Author: s.neumann Date: Fri Dec 23 11:00:19 2016 +0000 added deepCopy to avoid corrupting the original object #76 git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@125418 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 832f67adc75df88264aa017361788f2b2632da91 Author: jotsetung Date: Fri Dec 23 06:37:34 2016 +0100 Code cleanup o Comment unneeded (mostly testing purpose only) functions. o Remove previously commented out functions and code. o Add xcms startup message. commit c0ac4b7c622ccb211fcbb526a649e05ec514536f Author: jotsetung Date: Thu Dec 22 16:22:15 2016 +0100 Extend show method for XCMSnExp objects. commit a58cf39f9ebde3e6dc3ee94795fd3cb9addb18e5 Author: jotsetung Date: Thu Dec 22 15:23:36 2016 +0100 Enable XCMSnExp as return object in detectFeatures o Return the XCMSnExp object as a result object from the detectFeatures method. o Add related unit tests and update documentation. o XCMSnExp is ready to run (issue #85). commit 46c27495d87083dd41890e9ec2663f3ae669ef3d Author: jotsetung Date: Thu Dec 22 13:38:19 2016 +0100 Export the ProcessHistory and XProcessHistory classes o Export the ProcessHistory and XProcessHistory classes allowing to keep track of performed data analysis steps. o Add the processHistory method for XCMSnExp objects. o Add unit tests and documentations. commit 1fbf8b525a7557239c24296c62b4d98b9860e226 Author: jotsetung Date: Wed Dec 21 21:45:45 2016 +0100 Implement the detectFeatures method for CentWavePredIsoParam o Implement the detectFeatures method for CentWavePredIsoParam class. o Add documentation and unit tests. commit a3324552b94599b38995f117e9f3ce860465d83a Author: jotsetung Date: Wed Dec 21 16:34:47 2016 +0100 Add rtime,XCMSnExp method o Add rtime,XCMSnExp method that returns the retention time grouped per sample. commit f5f7d04610e4d1aeb2cbbd4b4315f89568317b66 Author: jotsetung Date: Wed Dec 21 15:48:09 2016 +0100 Add XCMSnExp class o Add the XCMSnExp class and export the MsFeatureData class (issue #85). o Add methods hasAdjustedRtime, hasAlignedFeatures, hasDetectedFeatures, features, features<-, featureGroups, featureGroups<-, adjustedRtime, adjustedRtime<-. o Add unit tests and documentation. commit cb148d5da0527462b548f0da04274ed8b505764c Author: jotsetung Date: Wed Dec 21 12:20:15 2016 +0100 Add MsFeatureData class o Add the MsFeatureData class for storing xcms preprocessing results (see issue #85 and https://github.com/lgatto/MSnbase/issues/177). o Add unit tests and validity function for the new object. commit 1ddbb890ddb2e5d741571c79647821c6d96c14a6 Author: Steffen Neumann Date: Tue Dec 20 22:14:46 2016 +0100 added deepCopy to avoid corrupting the original object, thanks to J. Stanstrup, closes #93 commit 37280ef115738daccd392c10f9e4b4fe5f6543a6 Merge: 5160700 fef11aa Author: Steffen Neumann Date: Tue Dec 20 21:43:15 2016 +0100 Merge branch 'stanstrup-patch-3' into devel commit fef11aac12ca51f227ac9302fe960997563e11a3 Merge: 5160700 ba80552 Author: Steffen Neumann Date: Tue Dec 20 21:43:02 2016 +0100 Merge branch 'patch-3' of git://github.com/stanstrup/xcms into stanstrup-patch-3 commit 5160700df8728f54c4460a0054ba975b05662f05 Merge: 8b595bf 647e2f9 Author: Steffen Neumann Date: Tue Dec 20 21:41:28 2016 +0100 Merge branch 'devel' of github.com:sneumann/xcms into devel commit 8b595bf187e6f97de4d19508c7faab73062ad593 Author: s.neumann Date: Tue Dec 20 20:39:30 2016 +0000 adapted manpage for plotQC From: Steffen Neumann git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@125356 bc3139a8-67e5-0310-9ffc-ced21a209358 commit b95b7689e622b50e55f76c2caaf19c25e6071c32 Author: s.neumann Date: Tue Dec 20 20:39:20 2016 +0000 merged xcms3 branch, added return value to plotQC() From: Steffen Neumann git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@125355 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 647e2f9c5fc7e6ea40d839c9846b07d668a95f0d Author: Steffen Neumann Date: Tue Dec 20 21:34:30 2016 +0100 adapted manpage for plotQC commit cf29b17d73c32bb0b89f7b7166fcb9cf9decec1e Author: Steffen Neumann Date: Tue Dec 20 21:32:50 2016 +0100 merged xcms3 branch, added return value to plotQC() commit ba805525dda98a90d9dd4682fbbdd0318bbab01d Author: Jan Stanstrup Date: Tue Dec 13 11:34:53 2016 +0100 added deepCopy to avoid corrupting the original object #76 commit dde6cba65156aedd28c36be89e64944d4e4e3389 Merge: d771f06 3385098 Author: jotsetung Date: Tue Dec 13 11:26:02 2016 +0100 Merge branch 'devel' into xcms3 commit 33850986e49365cbbdab5a0cffce65378db8ed35 Author: s.neumann Date: Tue Dec 13 10:14:49 2016 +0000 do not error if a centWave ROI contains no data, closes #90 git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@125062 bc3139a8-67e5-0310-9ffc-ced21a209358 commit bc99d3d47fb913a9ae13525b88186f1209fc08ae Merge: 58c2ad2 ba781a1 Author: s.neumann Date: Tue Dec 13 10:14:41 2016 +0000 Merge branch 'stanstrup-patch-2' git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@125061 bc3139a8-67e5-0310-9ffc-ced21a209358 commit ba781a1ba412e303fbd36673baf1e078495e0362 Merge: 58c2ad2 cba193b Author: Steffen Neumann Date: Tue Dec 13 11:11:47 2016 +0100 Merge branch 'patch-2' of git://github.com/stanstrup/xcms into stanstrup-patch-2 commit 58c2ad22057adfe1d4c7da5d06ffa75e1309a70e Author: s.neumann Date: Tue Dec 13 09:52:50 2016 +0000 Merge fix and bump version git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@125060 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 99b0eee8ca8ac60542c28065e3125cce20e09458 Merge: 2bf72a8 02444fd Author: s.neumann Date: Tue Dec 13 09:52:13 2016 +0000 Merge remote-tracking branch 'sneumann/devel' git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@125059 bc3139a8-67e5-0310-9ffc-ced21a209358 commit d771f06e483f8d579ba918e4b5fa56834f53d02f Author: jotsetung Date: Tue Dec 13 08:16:05 2016 +0100 Add CentWavePredIsoParam class o Add CentWavePredIsoParam class, documentation and unit tests. commit 515b8141ab02e3726cdc52cdb69f130a5ef9f689 Author: jotsetung Date: Mon Dec 12 15:24:55 2016 +0100 Add centWaveWithPresIsoROIs core API function o Add do_detectFeatures_centWaveWithPredIsoROIs function (issue #82, #35). o Change the findPeaks.addPredictedIsotopeFeatures and findPeals.centWaveWith... to use the new do_ function. o Unit test to compare original implementation with the new one. commit 3232b82c34254459f2d71d0a4c7a0b8e970ad641 Merge: 0d9d13e 02444fd Author: jotsetung Date: Sun Dec 11 19:21:14 2016 +0100 Merge branch 'devel' into xcms3 commit 02444fdc4f3e2264d7ff85e7320e9df955969379 Author: jotsetung Date: Sun Dec 11 19:04:11 2016 +0100 Fix wrong sample indexing in getEIC,xcmsSet o Fix the wrong sample indexing in getEIC,xcmsSet: issue #92. commit 0d9d13ec4fe9e9d0b24a4530297d436fe61b56a6 Author: jotsetung Date: Sat Dec 10 22:19:13 2016 +0100 Start implementing the do function for withAddIsotopes commit cba193bdeac458b978628c66d02a9dfdef69e1c6 Author: Jan Stanstrup Date: Fri Dec 9 11:05:45 2016 +0100 More informative warning. commit 9dc277bfeebd257b967645e61fb817c732ce16a3 Author: jotsetung Date: Thu Dec 8 12:24:43 2016 +0100 change profStepPad to use new binning functions o change profStepPad, used in retcor.obiwarp, to use new binning functions. o Ensure consistent naming of data types for parameters in roxygen documentation. commit 94b2b7f3048cd5e944b62631ea99ee772df78e00 Author: jotsetung Date: Thu Dec 8 09:51:28 2016 +0100 Update new_functionality vignette to new BiocStyle o Update the new_functionality vignette to correctly use the BiocStyle package. o Add the xcms.org org-file representing the future vignette describing xcms3 in detail. commit fd47069e84bc2b4f519b27db9d566f42cbdb9952 Author: jotsetung Date: Mon Dec 5 15:58:54 2016 +0100 Finish unit test tuning o Reduce processing time in the remaining unit tests. commit cb382f6bf4c20a568903ad549e3d9e72146d6ea7 Author: jotsetung Date: Fri Dec 2 12:57:45 2016 +0100 Unit test tuning o Tuning some more unit tests. o Disable the benchmarking vignette. commit 9fdf8a952bccabe19153d98b5371f5eabd8608a2 Author: jotsetung Date: Thu Dec 1 16:23:08 2016 +0100 Fix vignettes and tune unit tests o Disable parallel processing for R CMD check. o Fix BiocStyle templates in the new vignettes. o Tune unit tests and examples. commit 88322830e22aa9ce19749fbd1b7f40703fe22743 Merge: cd9165b bf142bc Author: Johannes Rainer Date: Thu Dec 1 14:43:15 2016 +0100 Merge pull request #88 from Treutler/xcms3 implemented function "do_predictIsotopeROIs" (issue #82) commit bf142bc4db56af7d66a06e2caee165147ae6ed9c Author: Treutler Date: Thu Dec 1 14:03:40 2016 +0100 split the functionality of "findPeaks.addPredictedIsotopeFeatures" / "findPeaks.centWaveWithPredictedIsotopeROIs" and implemented function "do_predictIsotopeROIs" commit cd9165bac43e205ffd3391ffa64aac7f42c5dac1 Author: jotsetung Date: Thu Dec 1 11:21:49 2016 +0100 Add MSW detectFeatures method o Add the detectFeatures,xxMSnExp,MSWParam method (issue #87). o Add documentation for massifquant detectFeatures method (issue #84). o Update NEWS. commit 8ace0ea8ddeefe383017920cac2a7316108473a5 Author: jotsetung Date: Wed Nov 30 14:53:49 2016 +0100 Add massifquant detectFeatures method o Implement the MassifquantParam class and the detectFeatures method (issue #84). o Implement the MSWParam class (issue #87). commit 35b3b7e476d918d7836ac6317bedb5c4ec92f60f Author: jotsetung Date: Mon Nov 28 14:59:09 2016 +0100 Add XProcessHistory class o The XProcessHistory class extends the ProcessHistory class and allows to add a Param class to the @param slot with the settings of the processing step. o Notes and ideas of the new XCMSnSet object. commit ccecc8f3bc62ffd0245f3a23b2f3a6e85c833b9d Author: jotsetung Date: Sun Nov 27 18:44:50 2016 +0100 Just some comments commit dd8cbd3c8f5aaa6e8633f7aee5185f4df009d9d4 Author: jotsetung Date: Sun Nov 27 08:34:34 2016 +0100 Add MassifquantParam class o Add a MassifquantParam class (issue #84). commit a6bfa83e3d5cce6dbfc4ce9416aaff873275d4ca Author: jotsetung Date: Fri Nov 25 11:52:56 2016 +0100 Add warning if data is not in centroid mode for centWave commit 284408213e7c410e2a09e68697c737524851ed03 Author: jotsetung Date: Fri Nov 25 11:32:37 2016 +0100 Add documentation for detectFeatures centWave and matchedFilter o Complete the missing documentation for the parameter classes and methods and the detectFeature methods (issue #83). commit 5b1e7a261f9b69dcb79792fdb83ee02807b73589 Author: jotsetung Date: Fri Nov 25 10:06:47 2016 +0100 Implement MatchedFilterParam and detectFeatures method o Add the MatchedFilterParam class and related methods. o Implement the detectFeatures,MSnExp,MatchedFilterParam and detectFeatures,OnDiskMSnExp,MatchedFilterParam methods (issue #83) o Add related unit tests. commit c4990197c14f30f40278e8c29f3e443574800ee7 Author: jotsetung Date: Thu Nov 24 10:38:38 2016 +0100 Add detectFeatures method for MSnExp and OnDiskMSnExp objects o Implement detectFeatures,MSnExp,CentWaveParam and detectFeatures,OnDiskMSnExp,CentWaveParam methods to perform feature detection using centWave on MSnExp and OnDiskMSnExp objects from the MSnbase package (issue #79). o Add unit tests evaluating correct processing. o Add roiList parameter validation to CentWaveParam class. commit e464617e26015c18f53303226e678adb9e70299b Author: jotsetung Date: Thu Nov 17 12:33:46 2016 +0100 Add CentWaveParam class (issue #78) o Add a Param and CentWaveParam class to pave the road for the feature detection framework. commit 27cf041f62238cf4e81a193e2b5f622724557c3a Author: jotsetung Date: Mon Nov 7 11:02:49 2016 +0100 Fix remaining unit test errors o Fix all unit test errors due to profBin function deprecation and new getEIC method (issue #68). o Add additional unit tests to ensure getXcmsRaw and [ subsetting works also along with specifying scanrange. commit ddc4e6f571bb9ed06d3bc54c93fc102ccf67c90f Author: jotsetung Date: Fri Oct 28 19:34:26 2016 +0200 Update getEIC method o getEIC method uses now the new binning and linear interpolation functions (issue #74). commit 348a598f05dd99d5fa4452a93aec4a9620453133 Author: jotsetung Date: Thu Oct 27 10:47:16 2016 +0200 Fix warnings in specDist o Fix warnings in specDist method (issue #73). commit b7cd5c9f919779100f2a6fa044835ee82e28d012 Author: jotsetung Date: Thu Oct 27 08:56:50 2016 +0200 Fix subsetting and profile matrix generation issues o Fix scanrange subsetting in xcmsRaw function (issue #69). o Avoid duplicated profile matrix generation in xcmsRaw function issue #72. o Add profMat method (issue #71). o Fix profStep<- and profMethod<- to avoid profile matrix generation when not needed. commit a98067ade4b5e03997f8c04d2897fe99391bd73f Author: jotsetung Date: Mon Oct 24 16:13:57 2016 +0200 Deprecate old binning functions. o Deprecate the profBin, profBinM, profBinLin, profBinLinM, profBinLinBase and profBinLinBaseM functions. commit 0ba4586a16b142fa10992b9c929051c5f1f21b93 Author: jotsetung Date: Mon Oct 24 08:03:08 2016 +0200 Change data import to newer mzR methods + Use `header` and `peaks` methods from mzR for data import instead of un-exported private methods. + Fix issue #67: add argument dropEmptyScans in readRawData to emulate the _old_ behaviour to discard empty scans. + Update new_functionality.Rmd. commit 93c216f8269868d13ddf824d55b4eef1c4f6a1e0 Author: jotsetung Date: Fri Oct 21 09:26:36 2016 +0200 Update the new_functionality.Rmd vignette. commit 31139f05c72360f84ed7aec20b7a19efadf81928 Merge: fa2fb9b fa4a97f Author: jotsetung Date: Fri Oct 21 09:20:17 2016 +0200 Merge branch 'devel' into xcms3 commit fa2fb9b054e06bfa4fb25ca8ac1eeb1286b77137 Author: jotsetung Date: Fri Oct 21 09:04:26 2016 +0200 Use official mzR methods for data import o Remove use of private ::: methods from mzR for data import and use the official 'header' and 'peaks' methods (issue #65). o Fix issue #66. commit b800586682acc62b63edb8954ad885f06fe434a4 Author: jotsetung Date: Thu Oct 20 11:19:39 2016 +0200 Change matchedFilter to use new binning code o Change findPeaks.matchedFilter and do_detectFeatures_matchedFilter to use the new binning code that performs the binning on the full matrix. This relates and fixes issues #47 and #52. o Change default in useOriginalCode to FALSE. commit 0036470d847cda9d1370194835a3748d5f2acab3 Author: jotsetung Date: Thu Oct 20 06:59:38 2016 +0200 Update findPeaks.centWave to use the do_ function o Update findPeaks.centWave to use the do_detectFeatures_centWave function. o Fix subsetting by scanrange in centWave (issue #64). commit 9611dae1e9689d67cbbfba2ceb1b5d215b921adc Author: jotsetung Date: Wed Oct 19 15:13:12 2016 +0200 Fix scanrange parameter in findPeaks methods o Fix problems with the scanrange parameter in findPeaks methods: - findPeaks.massifquant: parameter was ignored (issue #61). - findPeaks.matchedFilter: parameter was partially ignored (issue #63). - findPeaks.centWave: spectra were sub-setted, but @scantime not (issue #64). commit fa4a97f903ad8dba16cad0b3247f25d85dc27d93 Author: hpages@fhcrc.org Date: Mon Oct 17 19:10:43 2016 +0000 bump x.y.z versions to odd 'y' after creation of 3_4 branch git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@122712 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 1f816d946ed079f95dc4efa4e0aaa7cca360ef64 Author: hpages@fhcrc.org Date: Mon Oct 17 18:45:06 2016 +0000 bump x.y.z versions to even 'y' prior to creation of 3_4 branch git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@122710 bc3139a8-67e5-0310-9ffc-ced21a209358 commit baf28d1d1b3d9a32f20a485e5867b40369c73723 Author: jotsetung Date: Wed Sep 28 09:41:16 2016 +0200 Update the do_detectFeatures_centWave function o Update the do_detectFeatures_centWave function to the latest code. o Fix a bug in the [ method for xcmsRaw. commit 8a65c66a1d535603cf1b6f584099c7a0d06eda1b Author: jotsetung Date: Tue Sep 27 08:21:56 2016 +0200 Fix issue #60 o Fix issue #60. o Add documentation for do_detectFeatures_massifquant. commit 50848696d4fdfdd5f6c81f2c12f3e8d8e7f4bfb0 Merge: f82432a 4b2458e Author: jotsetung Date: Tue Sep 27 06:36:00 2016 +0200 Merge branch 'devel' into xcms3 o Fix conflicts in methods-xcmsRaw.R and NEWS. commit 4b2458e54e11a874fd5a0ce42cfb4d4e475a2865 Author: s.neumann Date: Mon Sep 26 14:28:09 2016 +0000 Bump version and add NEWS on documentation fixes git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@121387 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 87c0eb5ffac14b74133d4a3a84e18e78ee9a4bf3 Merge: 0574910 39e1823 Author: s.neumann Date: Mon Sep 26 14:28:01 2016 +0000 Merge branch 'Treutler-devel' into devel git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@121386 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 05749105ac97b83938dc11705a57a8c1165522c6 Author: s.neumann Date: Mon Sep 26 14:26:19 2016 +0000 updated NEWS and bumped version git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@121385 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 39e1823fb1ed38a76c77b8e061af0024a7d09c7f Author: Hendrik Treutler Date: Mon Sep 26 15:22:00 2016 +0200 fixed WARNINGS commit f82432a125e222d9a9ab475cdd47d36c2da1b458 Author: jotsetung Date: Mon Sep 26 08:19:46 2016 +0200 Add [ method for xcmsRaw objects o Implement a [ method for xcmsRaw objects allowing to sub-set the object to specified scans/spectra. o Implement the do_detectFeatures_massifquant function. o Unit tests for the above method/function. commit 9f35b91e6c6381ce6892d15b95b5ab9b70c02c3f Author: jotsetung Date: Fri Sep 23 13:48:10 2016 +0200 Fix NEWS and remove unused variables from C code o Remove unused variables from C/C++ code. commit 536aa23e1c07bedae1083ff7bee400efdc8dcc79 Author: jotsetung Date: Fri Sep 23 13:16:24 2016 +0200 Fix issue #59 o Fix passing arguments in the wrong order in do_detectFeatures_MSW. o Fix a small bug in diffreport (wrong variable name for a directory). commit 873b11d4f8d15c09e294ef3983ad62f8ac43a5ee Author: jotsetung Date: Fri Sep 23 12:35:38 2016 +0200 Fix issue #58 and prepare massifquant do function o Fix the bug in rawMat,xcmsRaw method (issue #58). o Prepare the "do" function for massifquant. commit 5a505865868ae409ea01a1be81741ee1a0c8b009 Author: jotsetung Date: Tue Sep 20 14:09:17 2016 +0200 Add .processHistory slot to xcmsSet o Add .processHistory slot, ProcessHistory class and functionality to track processing steps. o Add unit tests for subsetting, splitting and concatenating of xcmsSet objects checking that .processHistory slot is processed correctly. o Add showError method for xcmsSet objects that lists eventual errors during the feature detection step. o This addresses discussions in issue #55. commit 5313459da83183f6f24576f03fe3ebd62b024a43 Author: jotsetung Date: Mon Sep 19 13:16:02 2016 +0200 Add argument stopOnError to xcmsSet function o Add argument stopOnError to xcmsSet to enable feature detection in all provided files without stopping on errors. This relates to issue #55. o Add related documentation. commit fb93c843fc40ee7a41ede3f1a3746d7c7e13cd46 Author: Hendrik Treutler Date: Wed Sep 14 10:54:18 2016 +0200 corrected documentation commit b228271555c2144e8d557d5b940e4a43f2753542 Merge: d9ba200 5b73c67 Author: Hendrik Treutler Date: Mon Sep 12 11:28:40 2016 +0200 bug fix Merge branch 'devel' of https://github.com/sneumann/xcms into devel Conflicts: NAMESPACE R/AllGenerics.R R/methods-xcmsRaw.R inst/unitTests/runit.findPeaksCentWaveWithIsotopeROIs.R commit ea0e449bbd7a040b4fd6d63cad3d8cb35b6df594 Author: jotsetung Date: Mon Sep 12 08:37:36 2016 +0200 Documentation fixes and code tidying commit 330ae95620bd2ad2f15aa74066b04d5b52cd0e2c Author: jotsetung Date: Fri Sep 9 20:34:37 2016 +0200 Add do_detectFeatures_MSW function. commit f3fc2b4000217f728a9b7acbabcd6ffa6c280a73 Author: jotsetung Date: Wed Sep 7 16:29:38 2016 +0200 Re-organize IO functions o Put new IO functions into functions-IO.R commit c812cda0cea2a06b78571b54ab5c707489eafa22 Author: jotsetung Date: Wed Sep 7 14:15:02 2016 +0200 New data import function o Add new readRawData function that could replace the loadRaw and related S4 objects; this aims to fix issue #55. o Start implementing do_detectFeatures_MSW. commit 9bce991e2ed0b66289f88030e57e5db121ed8368 Author: jotsetung Date: Tue Sep 6 11:34:52 2016 +0200 Update NEWS commit 16ac3ddeb24f8bcecc7290d00c93a28daeb0ad27 Merge: 4f46f61 5b73c67 Author: jotsetung Date: Tue Sep 6 11:23:04 2016 +0200 Merge branch 'devel' into xcms3 commit 4f46f61127bb7b4fee037b10b57e67a2d070cd1b Author: jotsetung Date: Tue Sep 6 11:04:52 2016 +0200 Add .Rbuildignore and update .gitignore commit d9ba200c61b7d6886f527b3d17ce6361edc89b2a Author: Hendrik Treutler Date: Tue Sep 6 08:51:13 2016 +0200 splitted method 'findPeaks.centWaveWithPredictedIsotopeROIs' into two more modular methods; removed parameter list and added individual parameters instead; added documentation for new methods commit 1bea5114fcce0796bb8f98a9e624317130934d80 Author: jotsetung Date: Mon Sep 5 13:53:27 2016 +0200 Add matchedFilter benchmarking commit 5b73c67688add8718c998763a9d9053ea2885511 Merge: 897da00 71d4d46 Author: Steffen Neumann Date: Mon Sep 5 13:28:58 2016 +0200 Merge branch 'devel' of github.com:sneumann/xcms into devel commit 897da00d22770f3ae8d494133d3fec85ed31aaaa Author: s.neumann Date: Mon Sep 5 11:13:31 2016 +0000 Bump version, add NEWS git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120725 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 915d8bc1c2d3c7f4ad65ac2c5474f2c055c6e2ae Author: s.neumann Date: Mon Sep 5 11:13:24 2016 +0000 minor bug fix in unit test git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120724 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 550d3e2dfdb1fdf4dd3ca41f4eaa313a481347c6 Author: s.neumann Date: Mon Sep 5 11:13:16 2016 +0000 Bug fix in case of small m/z ranges from peak picking using centWave and bug fix regarding scantime ranges git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120723 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 73ac8a908dc445e745f0a3e3c42108621ec27750 Author: s.neumann Date: Mon Sep 5 11:13:08 2016 +0000 Added standard generic git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120722 bc3139a8-67e5-0310-9ffc-ced21a209358 commit a989bbdc350bd34b3a2606e8b982ce0bf99d2b16 Author: s.neumann Date: Mon Sep 5 11:13:01 2016 +0000 Added function findPeaks.centWaveWithPredictedIsotopeROIs for the sensitive detection of isotope peaks based on predicted isotope ROIs git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120721 bc3139a8-67e5-0310-9ffc-ced21a209358 commit b688d92f0ac223e6bc19db0140957a9b934a86aa Author: Hendrik Treutler Date: Mon Sep 5 12:48:59 2016 +0200 minor bug fix in unit test commit 1a69592b361794376eb01c28aaa263346acc449d Author: Hendrik Treutler Date: Mon Sep 5 12:40:52 2016 +0200 Bug fix in case of small m/z ranges from peak picking using centWave and bug fix regarding scantime ranges commit 8686fc16075ed7e2ca2b33f6c79e513b43cee92d Author: jotsetung Date: Mon Sep 5 10:51:11 2016 +0200 Update new_features vignette commit 7b72591f03fc429d408a89d1d4f8a92e3376ec10 Author: jotsetung Date: Mon Sep 5 09:59:35 2016 +0200 Add do_detectFeatures_centWave and doc updates o Export do_detectFeatures_centWave. o Add missing roxygen2 documentations. commit c70e5ba9edad767f6428ae441c2cba1d01de48e2 Author: jotsetung Date: Fri Sep 2 09:21:02 2016 +0200 Switch to do_detectFeatures_matchedFilter o findPeaks.matchedFilter calls do_detectFeatures_matchedFilter. o Default for now is to use the original code (discussed in issue #52). o Export useOriginalCode function that allows to switch between old and new implementation (default is old). o Describe discrepancies between old and new code for matchedFilter in the new_features.Rmd vignette. commit 2962d586d6505a6f09c53cf52117571f4b250a8e Author: jotsetung Date: Wed Aug 31 15:05:37 2016 +0200 Prepare all functions for issue #52 o Implement the test function comparing the matchedFilter implementations. o Start writing roxygen documentation for the do_ functions. o Tidy do_ functions up. commit 3ed5a6b9c7bae091a9ce84156bd06eadbf17df48 Author: Hendrik Treutler Date: Wed Aug 31 13:34:13 2016 +0200 Added standard generic commit 37f742eefd85a9e87a9b813516bbaa3b8d5f16ad Merge: efdbe68 71d4d46 Author: Hendrik Treutler Date: Wed Aug 31 09:40:24 2016 +0200 Merge branch 'devel' of https://github.com/Treutler/xcms into devel commit efdbe6828acc3281a907d0385d03b129cfa25f2c Author: htreutle Date: Wed Aug 31 09:14:38 2016 +0200 Added function findPeaks.centWaveWithPredictedIsotopeROIs for the sensitive detection of isotope peaks based on predicted isotope ROIs commit 1d3bb742ee0ea3e4f2b3739a59baf15574e1b1d3 Author: jotsetung Date: Mon Aug 29 12:30:49 2016 +0200 Add benchmarking vignette o Add benchmarking vignette. commit 7f78f064fa8397ecf2af0e9d9a30dac9fac0e37b Author: jotsetung Date: Thu Aug 25 06:25:16 2016 +0200 Fix compilation warnings in obiwarp code o Replace fabs with abs calls for integer variables in the C++ code of obiwarp that threw warnings during package compilation. commit 8f1b40a7d0aaaa51d8dcb709c8a78984445d8857 Author: jotsetung Date: Wed Aug 24 08:38:06 2016 +0200 Add new_functionality vignette o Add vignette describing new and modified functionality in xcms. commit 57b69a902c4cfd1f159c76760f6ab495f0ebb5b8 Author: jotsetung Date: Tue Aug 23 11:32:25 2016 +0200 Export binning functions o Export binYonX, breaks_on_binSize, breaks_on_nBins and imputeLinInterpol functions. o Add documenation (generated by roxygen2) for these functions. o Extensive unit tests for all functions. o Add parameter noInterpolAtEnds to imputeLinInterpol (mentioned in issue #49). commit fa1a0d5825c98ee939b23a3e993c359fe05f8ac3 Merge: 88ec298 71d4d46 Author: jotsetung Date: Tue Aug 23 08:29:33 2016 +0200 Merge branch 'devel' into xcms3 commit 88ec298cce23218ac20ed1c0dabeea73204aaa12 Author: jotsetung Date: Tue Aug 23 08:24:35 2016 +0200 Fix and improve binning functions o Fix breaks calculation for bins (multiplication instead of addition in C-function) resulting in identical break values than R's seq would. o Fix binYonX and imputeLinInterpol to return results identical to profBinM and similar (except bugs reported in issue #46). commit 71d4d46caab55d2eadcba535771d141bf4051837 Merge: 7f9bb05 7949102 Author: Steffen Neumann Date: Mon Aug 22 15:31:15 2016 +0200 Merge branch 'devel' of github.com:sneumann/xcms into devel commit 7f9bb0590b91346a41f2839f392d49eebfab8c34 Author: s.neumann Date: Mon Aug 22 13:30:24 2016 +0000 Temporarily disable vignette with benchmarking. git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120327 bc3139a8-67e5-0310-9ffc-ced21a209358 commit b4f020db8c5f459d36db18574619c4e34e4e0b81 Author: s.neumann Date: Mon Aug 22 12:45:33 2016 +0000 updated NEWS and bumped version git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120325 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 3625829bc0953c868f14598eec06512264ec8998 Merge: 100cedc 2fbba30 Author: s.neumann Date: Mon Aug 22 12:45:25 2016 +0000 Merge branch 'xcms3' into devel git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120324 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 79491025c265337f65a1be98f662aae1f4569334 Merge: b17c615 5219078 Author: Steffen Neumann Date: Mon Aug 22 14:44:50 2016 +0200 fix whitespace merge conflict commit b17c615f7449a444931097a1c936b69fd1253646 Author: Steffen Neumann Date: Mon Aug 22 14:42:34 2016 +0200 updated NEWS and bumped version commit 5f57f336f7c8247a341d30c5314b959a1a4a0130 Merge: 100cedc 2fbba30 Author: Steffen Neumann Date: Mon Aug 22 14:37:09 2016 +0200 Merge branch 'xcms3' into devel commit 100cedc031a2e7b0b935d0d122b7ac5373b3db95 Merge: bc80d6a e429a1b Author: s.neumann Date: Mon Aug 22 12:19:25 2016 +0000 fix merge conflict in NEWS git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@120323 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 5219078a4cd3098395f081776599e52ba6769e68 Merge: bc80d6a e429a1b Author: Steffen Neumann Date: Mon Aug 22 14:18:49 2016 +0200 fix merge conflict in NEWS commit 2fbba3060dae40cd6c1fb625172fc4e68f9ef0e7 Author: jotsetung Date: Thu Aug 11 09:19:41 2016 +0200 Implement binlinbase missing value imputation o Separate binning and missing value imputation from profBin* methods into two functions: binYonX and imputeLinInterpol. o Unit tests to validate that results from profBin* methods and binYonX and imputeLinInterpol match. commit 77345695e4aaa9210723ccd083ed7d1f3b95f710 Author: jotsetung Date: Tue Aug 9 15:05:26 2016 +0200 Add unit test comparing profBinM o Unit test to compare profBinM with binYonX with support for multiple data sub-sets. commit 65d34ce811bd48774db10df922d0d6c90de5638c Author: jotsetung Date: Tue Aug 9 09:51:46 2016 +0200 Add functionality to binYonX o Add support for length(fromIdx) and length(toIdx) > 1: performs the binning for each individual sub-set and returns a list of results. o Add argument returnIndex, which allows to return the index of the max or min value within each bin in x. o Change behaviour of arguments fromX and toX. These are by default NA now and are calculated internally based on the (eventually sub-setted) x values. If provided they allow to manually force the bin-range to be the same for all potential sub-sets. o Update roxygen documentation, add unit tests. commit 379038a7c424bfd20aa85e203ae96e7c8fde4634 Author: jotsetung Date: Mon Aug 8 16:07:25 2016 +0200 Implement binlin imputation for binYonX o Implement the binlin imputation method for missing bin values in the binYonX function. o Add corresponding unit tests and benchmarks. commit c98934013ea9a8521972bf5ef07956130d375f6f Author: jotsetung Date: Mon Aug 8 09:42:08 2016 +0200 Unify binning functions into single C-function o Define a single C-level binning function as entry point from R: binYonX. o Fix logical & and | in C. o Add unit test for profBinLin; that fails due to the bug in profBinLin! o Extend some documentations. commit 900811d5f83825df3940e38f210ce901e9fe4a2f Author: jotsetung Date: Fri Aug 5 08:11:06 2016 +0200 Add matchedFilter do_ function o Implement do_detectFeatures_matchedFilter (issue #35); thus far containing the original code from findPeaks.matchedFilter. o Add tests to compare results for matchedFilter. commit 43c68cc7ca0374cfca6504ba2e6fd83f5a003ec3 Author: jotsetung Date: Thu Aug 4 14:43:58 2016 +0200 max, min, sum and mean for binning function o binYonX supports aggregation of values within bin using min, max, sum and mean. o Add corresponding unit tests. commit 36f612de00b42e7c39a434d24d739a2c2801db05 Author: jotsetung Date: Thu Aug 4 09:41:20 2016 +0200 Binning function allow to shift bins o Add argument to binning function to allow shifting bins by binSize/2 to simulate the profBin method (see also issue #42). o Add benchmarking vignette. commit 54218b5cfb44985ebfdeb473f5adca158bcaf171 Author: jotsetung Date: Thu Aug 4 07:51:46 2016 +0200 Binning funtions return bin mid-point o The C-level binning functions return the bin mid-point. o Add unit tests for binning functions. commit 1aa1165c12c1500458eac3203cc11aa0ef40dfa8 Merge: 75ca47a e429a1b Author: jotsetung Date: Tue Aug 2 10:00:59 2016 +0200 Merge branch 'devel' into xcms3 commit e429a1ba876b35cdf6a7e77a5c528be8f91fb3f7 Author: jotsetung Date: Tue Aug 2 09:54:28 2016 +0200 Fix getXcmsRaw bug reported by Aleksandr o Fix the bug in getXcmsRaw that would eventually not apply retention time correction when reading the raw data (issue #44). commit 75ca47a33adf11ed2bddf81d5fdc2b7445e7ad10 Author: jotsetung Date: Tue Aug 2 08:41:07 2016 +0200 Binning C-function about implemented o Add unit tests and write (not yet exported) documentation. commit 500509aa5851d41101485cee8dd33079e0d1f1e6 Merge: b67dc45 d8cddeb Author: jotsetung Date: Mon Aug 1 08:29:46 2016 +0200 Merge branch 'devel' of https://github.com/sneumann/xcms into devel commit b67dc45a54203a4acf529da5f32aaa35e143d128 Author: jotsetung Date: Mon Aug 1 08:27:55 2016 +0200 Address missing documentation warning. o Fix the missing [ documentation for xcmsSet (issue #43). o Fix two 'partial argument match' notes in R CMD check. commit 508c09507e5a0e5ac5e5df5ca7aba57501101163 Author: jotsetung Date: Mon Aug 1 07:52:16 2016 +0200 Prepare for C-level binning functions o Start implementing binning utilities in C. commit 0f5d3c423dfda64b825883d2f9e862799c10a78b Author: jotsetung Date: Thu Jul 28 13:41:32 2016 +0200 Some documentation updates. o Some updates that (hopefully) clarify the difference between getEIC and rawEIC. commit d8cddebcc8a62c304046e372ec59523d0d160b4f Merge: d7465f6 8e6439e Author: Steffen Neumann Date: Wed Jul 27 16:25:10 2016 +0200 Merge branch 'devel' of github.com:sneumann/xcms into devel commit b7d774bd919d8596342b228c69db7f6f58da14cf Author: jotsetung Date: Wed Jul 27 11:23:03 2016 +0200 Fix findmzROI. See issue #38 commit bc80d6ab546633b771d9a4b76553bd0eae617313 Author: s.neumann Date: Tue Jul 26 12:57:10 2016 +0000 Bump version From: Steffen Neumann git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@119638 bc3139a8-67e5-0310-9ffc-ced21a209358 commit d7465f657fc27b591976d16e7b173e24fc819209 Author: s.neumann Date: Tue Jul 26 12:57:10 2016 +0000 Bump version From: Steffen Neumann git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@119638 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 0976bd26e5defa62bf548a530eb16516325a71a3 Merge: acc52a4 e1d915d Author: s.neumann Date: Tue Jul 26 12:57:02 2016 +0000 Merge remote-tracking branch 'remotes/origin/devel' into devel From: Steffen Neumann git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@119637 bc3139a8-67e5-0310-9ffc-ced21a209358 commit a68d6cac8b51b42e94914e3e7b471dc2fa8560ed Author: s.neumann Date: Tue Jul 26 12:57:02 2016 +0000 Merge remote-tracking branch 'remotes/origin/devel' into devel From: Steffen Neumann git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@119637 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 8e6439e1a6b88df86c6c99c10ed309ab83f99ffb Author: Steffen Neumann Date: Tue Jul 26 14:55:54 2016 +0200 Bump version commit 3a40d763d105846c5b0cc235929fe0934c026269 Merge: acc52a4 e1d915d Author: Steffen Neumann Date: Tue Jul 26 10:50:47 2016 +0200 Merge remote-tracking branch 'remotes/origin/devel' into devel commit e1d915d74272b556e9ba61ad6455403ab8c75fea Author: jotsetung Date: Tue Jul 26 10:10:22 2016 +0200 Update NEWS file. commit ef488cf0cc03e8d2a323c14fb4286b2d08db14d6 Merge: f8aaddc 1fbabb9 Author: jotsetung Date: Tue Jul 26 09:53:19 2016 +0200 Merge branch 'xcms3' into devel commit f8aaddcae90146f34da495ea1472f33f18fb17f7 Author: jotsetung Date: Tue Jul 26 09:52:36 2016 +0200 Add readme.org to .gitignore commit e537216f5075f9739c9e851cfd08a9e4a8138ae3 Author: s.neumann Date: Tue Jul 26 07:16:21 2016 +0000 Use BiocParallel for parallel processing o Use bplapply in getXcmsRaw. o Deprecate xcmsPapply. o Update documentations to include BPPARAM argument. o Import from BiocGenerics and Biobase, remove the definitions of phenoData and phenoData<- generics. o Import from graphics, stats etc to fix 'R CMD check' warnings. git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@119633 bc3139a8-67e5-0310-9ffc-ced21a209358 commit c43e37a7890de080d4ce1b200695a6bbb979014a Author: s.neumann Date: Tue Jul 26 07:16:11 2016 +0000 findPeaks and fillPeaks using BiocParallel o Add xcmsSet2 function and fillPeaks.chrom2 method that use BiocParallel instead of manual parallel processing setup. o Add a unit test comparing the results. git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@119632 bc3139a8-67e5-0310-9ffc-ced21a209358 commit db566567149f571bcc459b10e5215324bef5fbc4 Author: s.neumann Date: Tue Jul 26 07:16:02 2016 +0000 Added some uncommitted mzTab stuff git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@119631 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 115d8fd7560b592fd963282fefb96adbf68b4c55 Author: s.neumann Date: Tue Jul 26 07:15:55 2016 +0000 fixed merge conflict git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@119630 bc3139a8-67e5-0310-9ffc-ced21a209358 commit c3bbb074a6817f6825dda2d740fc149a9f2c46f4 Merge: 55dfbb2 e81b590 Author: Steffen Neumann Date: Tue Jul 26 09:12:37 2016 +0200 Merge branch 'devel' of github.com:sneumann/xcms into devel commit 55dfbb2d639817b1f51bf4fabaa69281a1add4e3 Author: jotsetung Date: Mon Jul 18 14:41:57 2016 +0200 Use BiocParallel for parallel processing o Use bplapply in getXcmsRaw. o Deprecate xcmsPapply. o Update documentations to include BPPARAM argument. o Import from BiocGenerics and Biobase, remove the definitions of phenoData and phenoData<- generics. o Import from graphics, stats etc to fix 'R CMD check' warnings. commit 74d32385367baf7dcb0880486c6f2794e7c2f05a Author: jotsetung Date: Mon Jul 18 13:27:56 2016 +0200 findPeaks and fillPeaks using BiocParallel o Add xcmsSet2 function and fillPeaks.chrom2 method that use BiocParallel instead of manual parallel processing setup. o Add a unit test comparing the results. commit 7cd59c562406eecac77d15ed05bf9d4629c4a0a0 Author: Steffen Neumann Date: Tue May 17 00:20:39 2016 +0200 Added some uncommitted mzTab stuff commit 458fb021a0bf6d5ad3efd88da40475bae01ce8a3 Author: Steffen Neumann Date: Tue Jul 26 09:09:12 2016 +0200 fixed merge conflict commit 1fbabb9783ef3e144ab9a8dee3aaad6f505a24c9 Author: jotsetung Date: Mon Jul 25 15:17:28 2016 +0200 Add centWave do_function. + Implement the do_detectFeatures_centWave function. + Add unit test for do_detectFeatures_centWave. + Code reformatting. commit 72f8d6d69fb9b41f77ad6875a40766bbaa429b07 Author: jotsetung Date: Fri Jul 22 09:02:45 2016 +0200 Move packages from Suggests to Imports + Move packages multtest, MassSpecWavelet and RANN from DESCRIPTION's Suggests to Imports field (issue #34). + Fix warning message in findPeaksPar. commit 6da19f05041ab245f3cd83d04148c2d664b007f6 Author: jotsetung Date: Thu Jul 21 10:37:21 2016 +0200 Fix R CMD check warnings and notes (#32) + Move generics from CleanData.R to AllGenerics.R, methods to methods-xcmsRaw.R + Remove all DUP = FALSE from the .C calls as they are ignored anyways. + Fix bug in fillPeaksChromPar using an index i that does not exist. + Fix bug in fillPeaksChromPar referring to variable 'object' that does not exist. + Fix bug call in group.nearest to undefined variable coreList (change to scoreList). + Move all deprecated functions to Deprecated.R. commit 623c6fdc6700f894fbfb8fa192ba86e200234953 Author: jotsetung Date: Thu Jul 21 10:17:57 2016 +0200 Refactoring for xcmsEIC and xcmsFragments done. commit 09d92f2fc2c2b371c2fc496cf4de87802acdc9b9 Author: jotsetung Date: Thu Jul 21 09:36:08 2016 +0200 Refactor xcmsRaw R source files. + Split methods/functions for xcmsRaw into respective files. + Put all generics into AllGenerics.R commit 6cbe43599ae919b11bfee0de9b6887484c022c00 Author: jotsetung Date: Thu Jul 21 06:45:47 2016 +0200 Done with refactoring of xcmsSet R files + Moved all generic method definitions for xcmsSet and xcmsRaw into AllGenerics.R. + Moved all(?) xcmsSet methods into methods-xcmsSet.R. + Moved all xcmsSet functions into functions-xcmsSet.R. + Reverted the doRUnit.R file. commit a4d09a15aab9fc0e1d9d957ed5709d263d927c93 Author: jotsetung Date: Wed Jul 20 07:45:56 2016 +0200 Add updateObject method for xcmsSet + Add updateObject and validity method for xcmsSet along with corresponding unit tests. + Internal cleanup: move class definitions to DataClasses.R, use roxygen2 to create the Collate field in DESCRIPTION. commit e0d4e36a6db8ffd7a8d6c7753307cc39a33d2355 Merge: 55817bd e81b590 Author: jotsetung Date: Tue Jul 19 08:39:07 2016 +0200 Merge branch 'devel' into xcms3 commit e81b590fd2596829103798e5d8b19e2fdfde2018 Author: jotsetung Date: Mon Jul 18 14:41:57 2016 +0200 Use BiocParallel for parallel processing o Use bplapply in getXcmsRaw. o Deprecate xcmsPapply. o Update documentations to include BPPARAM argument. o Import from BiocGenerics and Biobase, remove the definitions of phenoData and phenoData<- generics. o Import from graphics, stats etc to fix 'R CMD check' warnings. commit c57175f33fc13bfed929530345145edcdcb1849a Author: jotsetung Date: Mon Jul 18 13:27:56 2016 +0200 findPeaks and fillPeaks using BiocParallel o Add xcmsSet2 function and fillPeaks.chrom2 method that use BiocParallel instead of manual parallel processing setup. o Add a unit test comparing the results. commit 55817bd32eb2bae345737d16a24883e527474347 Author: jotsetung Date: Mon Jul 18 13:27:56 2016 +0200 findPeaks and fillPeaks using BiocParallel o Add xcmsSet2 function and fillPeaks.chrom2 method that use BiocParallel instead of manual parallel processing setup. o Add a unit test comparing the results. commit e01074465062a674af92f0e2704073a11899dd1f Author: jotsetung Date: Mon Jul 18 09:04:01 2016 +0200 Add readme.org file. commit fcc1feb555bf6007b0ca2d37bc8f3b6635b40a9d Author: s.neumann Date: Tue May 17 07:41:19 2016 +0000 Add NEWS and bump version git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@117572 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 2c5e8aa4b2ec61dc9c3a121281625830c72879ff Author: s.neumann Date: Tue May 17 07:41:13 2016 +0000 Added some uncommitted mzTab stuff git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@117571 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 48931274f4fd638c8123ed01f10250f0b066f2e4 Author: s.neumann Date: Tue May 17 07:41:06 2016 +0000 First go at mzTab export git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@117570 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 0b11cc3eb8b0e879b2f4ba35c514eb71906b6f85 Author: Steffen Neumann Date: Tue May 17 07:37:54 2016 +0200 Add NEWS and bump version commit 9535218aaf8e52bcd361f1c912375854104e7e76 Author: Steffen Neumann Date: Tue May 17 00:20:39 2016 +0200 Added some uncommitted mzTab stuff commit 89ff2dbf642d5a786c8efc3bee0fcc9467933d15 Author: Steffen Neumann Date: Mon May 16 23:37:04 2016 +0200 First go at mzTab export commit f900b6144c5eb0bbf8ccf4faee5f691861270f1e Author: s.neumann Date: Sun May 15 21:30:54 2016 +0000 The raw CDF/mzXML/mzData/mzML is assumed to have scans sorted by m/z. Instead of throwing an "m/z sort assumption violated !" error, the data is re-read and on-demand sorted by m/z. git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@117517 bc3139a8-67e5-0310-9ffc-ced21a209358 commit 7b38c2d610f66a1fee9d9330119f2b9c04fdf20e Merge: 23c01d7 f9be4f4 Author: s.neumann Date: Sun May 15 21:30:46 2016 +0000 Merge branch 'fixmzsortassumption' into devel git-svn-id: https://hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@117516 bc3139a8-67e5-0310-9ffc-ced21a209358 commit f9be4f4f23c49f56074670658bc9665e093c8f83 Author: Steffen Neumann Date: Fri Apr 1 14:09:29 2016 +0200 Add automatic repair for "m/z sort assumption violated !" error in findPeaks (centWave) git-svn-id: file:///home/git/hedgehog.fhcrc.org/bioconductor/trunk/madman/Rpacks/xcms@130136 bc3139a8-67e5-0310-9ffc-ced21a209358 --- DESCRIPTION | 4 +- R/do_findChromPeaks-functions.R | 756 +++++++++--------- R/do_groupChromPeaks-functions.R | 25 +- R/functions-utils.R | 4 +- R/methods-OnDiskMSnExp.R | 24 +- R/methods-xcmsSet.R | 3 +- inst/NEWS | 11 + man/do_findChromPeaks_centWave.Rd | 90 ++- ..._findChromPeaks_centWaveWithPredIsoROIs.Rd | 95 +-- man/do_findChromPeaks_massifquant.Rd | 67 +- man/do_findChromPeaks_matchedFilter.Rd | 72 +- man/do_findPeaks_MSW.Rd | 44 +- man/do_groupChromPeaks_density.Rd | 5 +- 13 files changed, 654 insertions(+), 546 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 9002911c1..3dbbef169 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: xcms -Version: 2.99.1 -Date: 2017-05-10 +Version: 2.99.2 +Date: 2017-05-30 Title: LC/MS and GC/MS Data Analysis Author: Colin A. Smith , Ralf Tautenhahn , diff --git a/R/do_findChromPeaks-functions.R b/R/do_findChromPeaks-functions.R index 401e50172..9c610e2e2 100644 --- a/R/do_findChromPeaks-functions.R +++ b/R/do_findChromPeaks-functions.R @@ -14,95 +14,106 @@ ## Conclusion: ## o speed improvement can only come from internal methods called withihn. ## -##' @title Core API function for centWave peak detection -##' -##' @description This function performs peak density and wavelet based -##' chromatographic peak detection for high resolution LC/MS data in centroid -##' mode [Tautenhahn 2008]. -##' -##' @details This algorithm is most suitable for high resolution -##' LC/\{TOF,OrbiTrap,FTICR\}-MS data in centroid mode. In the first phase the -##' method identifies \emph{regions of interest} (ROIs) representing mass traces -##' that are characterized as regions with less than \code{ppm} m/z deviation in -##' consecutive scans in the LC/MS map. These ROIs are then subsequently -##' analyzed using continuous wavelet transform (CWT) to locate chromatographic -##' peaks on different scales. The first analysis step is skipped, if regions -##' of interest are passed with the \code{roiList} parameter. -##' -##' @note The \emph{centWave} was designed to work on centroided mode, thus it -##' is expected that such data is presented to the function. -##' -##' This function exposes core chromatographic peak detection functionality of -##' the \emph{centWave} method. While this function can be called directly, -##' users will generally call the corresponding method for the data object -##' instead. -##' -##' @param mz Numeric vector with the individual m/z values from all scans/ -##' spectra of one file/sample. -##' @param int Numeric vector with the individual intensity values from all -##' scans/spectra of one file/sample. -##' @param scantime Numeric vector of length equal to the number of -##' spectra/scans of the data representing the retention time of each scan. -##' @param valsPerSpect Numeric vector with the number of values for each -##' spectrum. -##' @inheritParams findChromPeaks-centWave -##' -##' @family core peak detection functions -##' @references -##' Ralf Tautenhahn, Christoph B\"{o}ttcher, and Steffen Neumann "Highly -##' sensitive feature detection for high resolution LC/MS" \emph{BMC Bioinformatics} -##' 2008, 9:504 -##' @return -##' A matrix, each row representing an identified chromatographic peak, -##' with columns: -##' \describe{ -##' \item{mz}{Intensity weighted mean of m/z values of the peak across scans.} -##' \item{mzmin}{Minimum m/z of the peak.} -##' \item{mzmax}{Maximum m/z of the peak.} -##' \item{rt}{Retention time of the peak's midpoint.} -##' \item{rtmin}{Minimum retention time of the peak.} -##' \item{rtmax}{Maximum retention time of the peak.} -##' \item{into}{Integrated (original) intensity of the peak.} -##' \item{intb}{Per-peak baseline corrected integrated peak intensity.} -##' \item{maxo}{Maximum intensity of the peak.} -##' \item{sn}{Signal to noise ratio, defined as \code{(maxo - baseline)/sd}, -##' \code{sd} being the standard deviation of local chromatographic noise.} -##' \item{egauss}{RMSE of Gaussian fit.} -##' } -##' Additional columns for \code{verboseColumns = TRUE}: -##' \describe{ -##' \item{mu}{Gaussian parameter mu.} -##' \item{sigma}{Gaussian parameter sigma.} -##' \item{h}{Gaussian parameter h.} -##' \item{f}{Region number of the m/z ROI where the peak was localized.} -##' \item{dppm}{m/z deviation of mass trace across scanns in ppk.} -##' \item{scale}{Scale on which the peak was localized.} -##' \item{scpos}{Peak position found by wavelet analysis (scan number).} -##' \item{scmin}{Left peak limit found by wavelet analysis (scan number).} -##' \item{scmax}{Right peak limit found by wavelet analysis (scan numer).} -##' } -##' @author Ralf Tautenhahn, Johannes Rainer -##' -##' @seealso \code{\link{centWave}} for the standard user interface method. -##' -##' @examples -##' ## Load the test file -##' library(faahKO) -##' fs <- system.file('cdf/KO/ko15.CDF', package = "faahKO") -##' xr <- xcmsRaw(fs, profstep = 0) -##' -##' ## Extracting the data from the xcmsRaw for do_findChromPeaks_centWave -##' mzVals <- xr@env$mz -##' intVals <- xr@env$intensity -##' ## Define the values per spectrum: -##' valsPerSpect <- diff(c(xr@scanindex, length(mzVals))) -##' -##' ## Calling the function. We're using a large value for noise to speed up -##' ## the call in the example performance - in a real use case we would either -##' ## set the value to a reasonable value or use the default value. -##' res <- do_findChromPeaks_centWave(mz = mzVals, int = intVals, -##' scantime = xr@scantime, valsPerSpect = valsPerSpect, noise = 10000) -##' head(res) +#' @title Core API function for centWave peak detection +#' +#' @description This function performs peak density and wavelet based +#' chromatographic peak detection for high resolution LC/MS data in centroid +#' mode [Tautenhahn 2008]. +#' +#' @details This algorithm is most suitable for high resolution +#' LC/\{TOF,OrbiTrap,FTICR\}-MS data in centroid mode. In the first phase +#' the method identifies \emph{regions of interest} (ROIs) representing +#' mass traces that are characterized as regions with less than \code{ppm} +#' m/z deviation in consecutive scans in the LC/MS map. These ROIs are then +#' subsequently analyzed using continuous wavelet transform (CWT) to locate +#' chromatographic peaks on different scales. The first analysis step is +#' skipped, if regions of interest are passed with the \code{roiList} +#' parameter. +#' +#' @note The \emph{centWave} was designed to work on centroided mode, thus it +#' is expected that such data is presented to the function. +#' +#' This function exposes core chromatographic peak detection functionality +#' of the \emph{centWave} method. While this function can be called +#' directly, users will generally call the corresponding method for the +#' data object instead. +#' +#' @param mz Numeric vector with the individual m/z values from all scans/ +#' spectra of one file/sample. +#' +#' @param int Numeric vector with the individual intensity values from all +#' scans/spectra of one file/sample. +#' +#' @param scantime Numeric vector of length equal to the number of +#' spectra/scans of the data representing the retention time of each scan. +#' +#' @param valsPerSpect Numeric vector with the number of values for each +#' spectrum. +#' +#' @inheritParams findChromPeaks-centWave +#' +#' @family core peak detection functions +#' +#' @references +#' Ralf Tautenhahn, Christoph B\"{o}ttcher, and Steffen Neumann "Highly +#' sensitive feature detection for high resolution LC/MS" +#' \emph{BMC Bioinformatics} 2008, 9:504 +#' +#' @return +#' A matrix, each row representing an identified chromatographic peak, +#' with columns: +#' \describe{ +#' +#' \item{mz}{Intensity weighted mean of m/z values of the peak across +#' scans.} +#' \item{mzmin}{Minimum m/z of the peak.} +#' \item{mzmax}{Maximum m/z of the peak.} +#' \item{rt}{Retention time of the peak's midpoint.} +#' \item{rtmin}{Minimum retention time of the peak.} +#' \item{rtmax}{Maximum retention time of the peak.} +#' \item{into}{Integrated (original) intensity of the peak.} +#' \item{intb}{Per-peak baseline corrected integrated peak intensity.} +#' \item{maxo}{Maximum intensity of the peak.} +#' \item{sn}{Signal to noise ratio, defined as \code{(maxo - baseline)/sd}, +#' \code{sd} being the standard deviation of local chromatographic noise.} +#' \item{egauss}{RMSE of Gaussian fit.} +#' } +#' Additional columns for \code{verboseColumns = TRUE}: +#' \describe{ +#' +#' \item{mu}{Gaussian parameter mu.} +#' \item{sigma}{Gaussian parameter sigma.} +#' \item{h}{Gaussian parameter h.} +#' \item{f}{Region number of the m/z ROI where the peak was localized.} +#' \item{dppm}{m/z deviation of mass trace across scans in ppm.} +#' \item{scale}{Scale on which the peak was localized.} +#' \item{scpos}{Peak position found by wavelet analysis (scan number).} +#' \item{scmin}{Left peak limit found by wavelet analysis (scan number).} +#' \item{scmax}{Right peak limit found by wavelet analysis (scan numer).} +#' } +#' +#' @author Ralf Tautenhahn, Johannes Rainer +#' +#' @seealso \code{\link{centWave}} for the standard user interface method. +#' +#' @examples +#' ## Load the test file +#' library(faahKO) +#' fs <- system.file('cdf/KO/ko15.CDF', package = "faahKO") +#' xr <- xcmsRaw(fs, profstep = 0) +#' +#' ## Extracting the data from the xcmsRaw for do_findChromPeaks_centWave +#' mzVals <- xr@env$mz +#' intVals <- xr@env$intensity +#' ## Define the values per spectrum: +#' valsPerSpect <- diff(c(xr@scanindex, length(mzVals))) +#' +#' ## Calling the function. We're using a large value for noise to speed up +#' ## the call in the example performance - in a real use case we would either +#' ## set the value to a reasonable value or use the default value. +#' res <- do_findChromPeaks_centWave(mz = mzVals, int = intVals, +#' scantime = xr@scantime, valsPerSpect = valsPerSpect, noise = 10000) +#' head(res) do_findChromPeaks_centWave <- function(mz, int, scantime, valsPerSpect, ppm = 25, peakwidth = c(20, 50), @@ -1182,74 +1193,84 @@ do_findChromPeaks_centWave <- function(mz, int, scantime, valsPerSpect, ############################################################ ## massifquant ## -##' @title Core API function for massifquant peak detection -##' -##' @description Massifquant is a Kalman filter (KF)-based chromatographic peak -##' detection for XC-MS data in centroid mode. The identified peaks -##' can be further refined with the \emph{centWave} method (see -##' \code{\link{do_findChromPeaks_centWave}} for details on centWave) -##' by specifying \code{withWave = TRUE}. -##' -##' @details This algorithm's performance has been tested rigorously -##' on high resolution LC/{OrbiTrap, TOF}-MS data in centroid mode. -##' Simultaneous kalman filters identify peaks and calculate their -##' area under the curve. The default parameters are set to operate on -##' a complex LC-MS Orbitrap sample. Users will find it useful to do some -##' simple exploratory data analysis to find out where to set a minimum -##' intensity, and identify how many scans an average peak spans. The -##' \code{consecMissedLimit} parameter has yielded good performance on -##' Orbitrap data when set to (\code{2}) and on TOF data it was found best -##' to be at (\code{1}). This may change as the algorithm has yet to be -##' tested on many samples. The \code{criticalValue} parameter is perhaps -##' most dificult to dial in appropriately and visual inspection of peak -##' identification is the best suggested tool for quick optimization. -##' The \code{ppm} and \code{checkBack} parameters have shown less influence -##' than the other parameters and exist to give users flexibility and -##' better accuracy. -##' @inheritParams do_findChromPeaks_centWave -##' @inheritParams findChromPeaks-centWave -##' @inheritParams findChromPeaks-massifquant -##' @return -##' A matrix, each row representing an identified chromatographic peak, -##' with columns: -##' \describe{ -##' \item{mz}{Intensity weighted mean of m/z values of the peaks across -##' scans.} -##' \item{mzmin}{Minumum m/z of the peak.} -##' \item{mzmax}{Maximum m/z of the peak.} -##' \item{rtmin}{Minimum retention time of the peak.} -##' \item{rtmax}{Maximum retention time of the peak.} -##' \item{rt}{Retention time of the peak's midpoint.} -##' \item{into}{Integrated (original) intensity of the peak.} -##' \item{maxo}{Maximum intensity of the peak.} -##' } -##' If \code{withWave} is set to \code{TRUE}, the result is the same as -##' returned by the \code{\link{do_findChromPeaks_centWave}} method. -##' @family core peak detection functions -##' @seealso \code{\link{massifquant}} for the standard user interface method. -##' @references -##' Conley CJ, Smith R, Torgrip RJ, Taylor RM, Tautenhahn R and Prince JT -##' "Massifquant: open-source Kalman filter-based XC-MS isotope trace feature -##' detection" \emph{Bioinformatics} 2014, 30(18):2636-43. -##' @author Christopher Conley -##' @examples -##' library(faahKO) -##' library(xcms) -##' cdfpath <- system.file("cdf", package = "faahKO") -##' cdffiles <- list.files(cdfpath, recursive = TRUE, full.names = TRUE) -##' -##' ## Read the first file -##' xraw <- xcmsRaw(cdffiles[1]) -##' ## Extract the required data -##' mzVals <- xraw@env$mz -##' intVals <- xraw@env$intensity -##' ## Define the values per spectrum: -##' valsPerSpect <- diff(c(xraw@scanindex, length(mzVals))) -##' -##' ## Perform the peak detection using massifquant -##' res <- do_findChromPeaks_massifquant(mz = mzVals, int = intVals, -##' scantime = xraw@scantime, valsPerSpect = valsPerSpect) -##' head(res) +#' @title Core API function for massifquant peak detection +#' +#' @description Massifquant is a Kalman filter (KF)-based chromatographic peak +#' detection for XC-MS data in centroid mode. The identified peaks +#' can be further refined with the \emph{centWave} method (see +#' \code{\link{do_findChromPeaks_centWave}} for details on centWave) +#' by specifying \code{withWave = TRUE}. +#' +#' @details This algorithm's performance has been tested rigorously +#' on high resolution LC/{OrbiTrap, TOF}-MS data in centroid mode. +#' Simultaneous kalman filters identify peaks and calculate their +#' area under the curve. The default parameters are set to operate on +#' a complex LC-MS Orbitrap sample. Users will find it useful to do some +#' simple exploratory data analysis to find out where to set a minimum +#' intensity, and identify how many scans an average peak spans. The +#' \code{consecMissedLimit} parameter has yielded good performance on +#' Orbitrap data when set to (\code{2}) and on TOF data it was found best +#' to be at (\code{1}). This may change as the algorithm has yet to be +#' tested on many samples. The \code{criticalValue} parameter is perhaps +#' most dificult to dial in appropriately and visual inspection of peak +#' identification is the best suggested tool for quick optimization. +#' The \code{ppm} and \code{checkBack} parameters have shown less influence +#' than the other parameters and exist to give users flexibility and +#' better accuracy. +#' +#' @inheritParams do_findChromPeaks_centWave +#' +#' @inheritParams findChromPeaks-centWave +#' +#' @inheritParams findChromPeaks-massifquant +#' +#' @return +#' A matrix, each row representing an identified chromatographic peak, +#' with columns: +#' \describe{ +#' \item{mz}{Intensity weighted mean of m/z values of the peaks across +#' scans.} +#' \item{mzmin}{Minumum m/z of the peak.} +#' \item{mzmax}{Maximum m/z of the peak.} +#' \item{rtmin}{Minimum retention time of the peak.} +#' \item{rtmax}{Maximum retention time of the peak.} +#' \item{rt}{Retention time of the peak's midpoint.} +#' \item{into}{Integrated (original) intensity of the peak.} +#' \item{maxo}{Maximum intensity of the peak.} +#' } +#' +#' If \code{withWave} is set to \code{TRUE}, the result is the same as +#' returned by the \code{\link{do_findChromPeaks_centWave}} method. +#' +#' @family core peak detection functions +#' +#' @seealso \code{\link{massifquant}} for the standard user interface method. +#' +#' @references +#' Conley CJ, Smith R, Torgrip RJ, Taylor RM, Tautenhahn R and Prince JT +#' "Massifquant: open-source Kalman filter-based XC-MS isotope trace feature +#' detection" \emph{Bioinformatics} 2014, 30(18):2636-43. +#' +#' @author Christopher Conley +#' +#' @examples +#' library(faahKO) +#' library(xcms) +#' cdfpath <- system.file("cdf", package = "faahKO") +#' cdffiles <- list.files(cdfpath, recursive = TRUE, full.names = TRUE) +#' +#' ## Read the first file +#' xraw <- xcmsRaw(cdffiles[1]) +#' ## Extract the required data +#' mzVals <- xraw@env$mz +#' intVals <- xraw@env$intensity +#' ## Define the values per spectrum: +#' valsPerSpect <- diff(c(xraw@scanindex, length(mzVals))) +#' +#' ## Perform the peak detection using massifquant +#' res <- do_findChromPeaks_massifquant(mz = mzVals, int = intVals, +#' scantime = xraw@scantime, valsPerSpect = valsPerSpect) +#' head(res) do_findChromPeaks_massifquant <- function(mz, int, scantime, @@ -1396,80 +1417,89 @@ do_findChromPeaks_massifquant <- function(mz, ## impute: none (=bin), binlin, binlinbase, intlin ## baseValue default: min(int)/2 (smallest value in the whole data set). ## -##' @title Core API function for matchedFilter peak detection -##' -##' @description This function identifies peaks in the chromatographic -##' time domain as described in [Smith 2006]. The intensity values are -##' binned by cutting The LC/MS data into slices (bins) of a mass unit -##' (\code{binSize} m/z) wide. Within each bin the maximal intensity is -##' selected. The peak detection is then performed in each bin by -##' extending it based on the \code{steps} parameter to generate slices -##' comprising bins \code{current_bin - steps +1} to \code{current_bin + steps - 1}. -##' Each of these slices is then filtered with matched filtration using -##' a second-derative Gaussian as the model peak shape. After filtration -##' peaks are detected using a signal-to-ration cut-off. For more details -##' and illustrations see [Smith 2006]. -##' -##' @details The intensities are binned by the provided m/z values within each -##' spectrum (scan). Binning is performed such that the bins are centered around -##' the m/z values (i.e. the first bin includes all m/z values between -##' \code{min(mz) - bin_size/2} and \code{min(mz) + bin_size/2}). -##' -##' For more details on binning and missing value imputation see -##' \code{\link{binYonX}} and \code{\link{imputeLinInterpol}} methods. -##' -##' @note -##' This function exposes core peak detection functionality of -##' the \emph{matchedFilter} method. While this function can be called directly, -##' users will generally call the corresponding method for the data object -##' instead (e.g. the \code{link{findPeaks.matchedFilter}} method). -##' -##' @inheritParams do_findChromPeaks_centWave -##' @inheritParams findChromPeaks-centWave -##' @inheritParams imputeLinInterpol -##' @inheritParams findChromPeaks-matchedFilter -##' -##' @return A matrix, each row representing an identified chromatographic peak, -##' with columns: -##' \describe{ -##' \item{mz}{Intensity weighted mean of m/z values of the peak across scans.} -##' \item{mzmin}{Minimum m/z of the peak.} -##' \item{mzmax}{Maximum m/z of the peak.} -##' \item{rt}{Retention time of the peak's midpoint.} -##' \item{rtmin}{Minimum retention time of the peak.} -##' \item{rtmax}{Maximum retention time of the peak.} -##' \item{into}{Integrated (original) intensity of the peak.} -##' \item{intf}{Integrated intensity of the filtered peak.} -##' \item{maxo}{Maximum intensity of the peak.} -##' \item{maxf}{Maximum intensity of the filtered peak.} -##' \item{i}{Rank of peak in merged EIC (\code{<= max}).} -##' \item{sn}{Signal to noise ratio of the peak} -##' } -##' @references -##' Colin A. Smith, Elizabeth J. Want, Grace O'Maille, Ruben Abagyan and -##' Gary Siuzdak. "XCMS: Processing Mass Spectrometry Data for Metabolite -##' Profiling Using Nonlinear Peak Alignment, Matching, and Identification" -##' \emph{Anal. Chem.} 2006, 78:779-787. -##' @author Colin A Smith, Johannes Rainer -##' @family core peak detection functions -##' @seealso \code{\link{binYonX}} for a binning function, -##' \code{\link{imputeLinInterpol}} for the interpolation of missing values. -##' \code{\link{matchedFilter}} for the standard user interface method. -##' @examples -##' ## Load the test file -##' library(faahKO) -##' fs <- system.file('cdf/KO/ko15.CDF', package = "faahKO") -##' xr <- xcmsRaw(fs) -##' -##' ## Extracting the data from the xcmsRaw for do_findChromPeaks_centWave -##' mzVals <- xr@env$mz -##' intVals <- xr@env$intensity -##' ## Define the values per spectrum: -##' valsPerSpect <- diff(c(xr@scanindex, length(mzVals))) -##' -##' res <- do_findChromPeaks_matchedFilter(mz = mzVals, int = intVals, -##' scantime = xr@scantime, valsPerSpect = valsPerSpect) -##' head(res) +#' @title Core API function for matchedFilter peak detection +#' +#' @description This function identifies peaks in the chromatographic +#' time domain as described in [Smith 2006]. The intensity values are +#' binned by cutting The LC/MS data into slices (bins) of a mass unit +#' (\code{binSize} m/z) wide. Within each bin the maximal intensity is +#' selected. The peak detection is then performed in each bin by +#' extending it based on the \code{steps} parameter to generate slices +#' comprising bins \code{current_bin - steps +1} to +#' \code{current_bin + steps - 1}. +#' Each of these slices is then filtered with matched filtration using +#' a second-derative Gaussian as the model peak shape. After filtration +#' peaks are detected using a signal-to-ration cut-off. For more details +#' and illustrations see [Smith 2006]. +#' +#' @details The intensities are binned by the provided m/z values within each +#' spectrum (scan). Binning is performed such that the bins are centered +#' around the m/z values (i.e. the first bin includes all m/z values between +#' \code{min(mz) - bin_size/2} and \code{min(mz) + bin_size/2}). +#' +#' For more details on binning and missing value imputation see +#' \code{\link{binYonX}} and \code{\link{imputeLinInterpol}} methods. +#' +#' @note This function exposes core peak detection functionality of +#' the \emph{matchedFilter} method. While this function can be called +#' directly, users will generally call the corresponding method for the +#' data object instead (e.g. the \code{link{findPeaks.matchedFilter}} +#' method). +#' +#' @inheritParams do_findChromPeaks_centWave +#' +#' @inheritParams findChromPeaks-centWave +#' +#' @inheritParams imputeLinInterpol +#' +#' @inheritParams findChromPeaks-matchedFilter +#' +#' @return A matrix, each row representing an identified chromatographic peak, +#' with columns: +#' \describe{ +#' \item{mz}{Intensity weighted mean of m/z values of the peak across scans.} +#' \item{mzmin}{Minimum m/z of the peak.} +#' \item{mzmax}{Maximum m/z of the peak.} +#' \item{rt}{Retention time of the peak's midpoint.} +#' \item{rtmin}{Minimum retention time of the peak.} +#' \item{rtmax}{Maximum retention time of the peak.} +#' \item{into}{Integrated (original) intensity of the peak.} +#' \item{intf}{Integrated intensity of the filtered peak.} +#' \item{maxo}{Maximum intensity of the peak.} +#' \item{maxf}{Maximum intensity of the filtered peak.} +#' \item{i}{Rank of peak in merged EIC (\code{<= max}).} +#' \item{sn}{Signal to noise ratio of the peak} +#' } +#' +#' @references +#' Colin A. Smith, Elizabeth J. Want, Grace O'Maille, Ruben Abagyan and +#' Gary Siuzdak. "XCMS: Processing Mass Spectrometry Data for Metabolite +#' Profiling Using Nonlinear Peak Alignment, Matching, and Identification" +#' \emph{Anal. Chem.} 2006, 78:779-787. +#' +#' @author Colin A Smith, Johannes Rainer +#' +#' @family core peak detection functions +#' +#' @seealso \code{\link{binYonX}} for a binning function, +#' \code{\link{imputeLinInterpol}} for the interpolation of missing values. +#' \code{\link{matchedFilter}} for the standard user interface method. +#' +#' @examples +#' ## Load the test file +#' library(faahKO) +#' fs <- system.file('cdf/KO/ko15.CDF', package = "faahKO") +#' xr <- xcmsRaw(fs) +#' +#' ## Extracting the data from the xcmsRaw for do_findChromPeaks_centWave +#' mzVals <- xr@env$mz +#' intVals <- xr@env$intensity +#' ## Define the values per spectrum: +#' valsPerSpect <- diff(c(xr@scanindex, length(mzVals))) +#' +#' res <- do_findChromPeaks_matchedFilter(mz = mzVals, int = intVals, +#' scantime = xr@scantime, valsPerSpect = valsPerSpect) +#' head(res) do_findChromPeaks_matchedFilter <- function(mz, int, scantime, @@ -1863,44 +1893,47 @@ do_findChromPeaks_matchedFilter <- function(mz, ############################################################ ## MSW ## -##' @title Core API function for single-spectrum non-chromatography MS data -##' peak detection -##' -##' @description This function performs peak detection in mass spectrometry -##' direct injection spectrum using a wavelet based algorithm. -##' -##' @details This is a wrapper around the peak picker in Bioconductor's -##' \code{MassSpecWavelet} package calling -##' \code{\link[MassSpecWavelet]{peakDetectionCWT}} and -##' \code{\link[MassSpecWavelet]{tuneInPeakInfo}} functions. See the -##' \emph{xcmsDirect} vignette for more information. -##' -##' @inheritParams do_findChromPeaks_centWave -##' @inheritParams findChromPeaks-centWave -##' @param ... Additional parameters to be passed to the -##' \code{\link[MassSpecWavelet]{peakDetectionCWT}} function. -##' -##' @return -##' A matrix, each row representing an identified peak, with columns: -##' \describe{ -##' \item{mz}{m/z value of the peak at the centroid position.} -##' \item{mzmin}{Minimum m/z of the peak.} -##' \item{mzmax}{Maximum m/z of the peak.} -##' \item{rt}{Always \code{-1}.} -##' \item{rtmin}{Always \code{-1}.} -##' \item{rtmax}{Always \code{-1}.} -##' \item{into}{Integrated (original) intensity of the peak.} -##' \item{maxo}{Maximum intensity of the peak.} -##' \item{intf}{Always \code{NA}.} -##' \item{maxf}{Maximum MSW-filter response of the peak.} -##' \item{sn}{Signal to noise ratio.} -##' } -##' -##' @family core peak detection functions -##' @seealso ##' \code{\link{MSW}} for the standard user interface -##' method. \code{\link[MassSpecWavelet]{peakDetectionCWT}} from the -##' \code{MassSpecWavelet} package. -##' @author Joachim Kutzera, Steffen Neumann, Johannes Rainer +#' @title Core API function for single-spectrum non-chromatography MS data +#' peak detection +#' +#' @description This function performs peak detection in mass spectrometry +#' direct injection spectrum using a wavelet based algorithm. +#' +#' @details This is a wrapper around the peak picker in Bioconductor's +#' \code{MassSpecWavelet} package calling +#' \code{\link[MassSpecWavelet]{peakDetectionCWT}} and +#' \code{\link[MassSpecWavelet]{tuneInPeakInfo}} functions. See the +#' \emph{xcmsDirect} vignette for more information. +#' +#' @inheritParams do_findChromPeaks_centWave +#' +#' @inheritParams findChromPeaks-centWave +#' +#' @param ... Additional parameters to be passed to the +#' \code{\link[MassSpecWavelet]{peakDetectionCWT}} function. +#' +#' @return A matrix, each row representing an identified peak, with columns: +#' \describe{ +#' \item{mz}{m/z value of the peak at the centroid position.} +#' \item{mzmin}{Minimum m/z of the peak.} +#' \item{mzmax}{Maximum m/z of the peak.} +#' \item{rt}{Always \code{-1}.} +#' \item{rtmin}{Always \code{-1}.} +#' \item{rtmax}{Always \code{-1}.} +#' \item{into}{Integrated (original) intensity of the peak.} +#' \item{maxo}{Maximum intensity of the peak.} +#' \item{intf}{Always \code{NA}.} +#' \item{maxf}{Maximum MSW-filter response of the peak.} +#' \item{sn}{Signal to noise ratio.} +#' } +#' +#' @family core peak detection functions +#' +#' @seealso \code{\link{MSW}} for the standard user interface +#' method. \code{\link[MassSpecWavelet]{peakDetectionCWT}} from the +#' \code{MassSpecWavelet} package. +#' +#' @author Joachim Kutzera, Steffen Neumann, Johannes Rainer do_findPeaks_MSW <- function(mz, int, snthresh = 3, verboseColumns = FALSE, ...) { ## Input argument checking. @@ -2192,15 +2225,15 @@ do_findPeaks_MSW <- function(mz, int, snthresh = 3, ## } ## Tuned from the original code. -##' @param peaks. \code{matrix} or \code{data.frame} with peaks for which -##' isotopes should be predicted. Required columns are \code{"mz"}, -##' \code{"mzmin"}, \code{"mzmax"}, \code{"scmin"}, \code{"scmax"}, -##' \code{"intb"} and \code{"scale"}. -##' -##' @return a \code{matrix} with columns \code{"mz"}, \code{"mzmin"}, -##' \code{"mzmax"}, \code{"scmin"}, \code{"scmax"}, \code{"length"} (always -1), -##' \code{"intensity"} (always -1) and \code{"scale"}. -##' @noRd +#' @param peaks. \code{matrix} or \code{data.frame} with peaks for which +#' isotopes should be predicted. Required columns are \code{"mz"}, +#' \code{"mzmin"}, \code{"mzmax"}, \code{"scmin"}, \code{"scmax"}, +#' \code{"intb"} and \code{"scale"}. +#' +#' @return a \code{matrix} with columns \code{"mz"}, \code{"mzmin"}, +#' \code{"mzmax"}, \code{"scmin"}, \code{"scmax"}, \code{"length"} (always -1), +#' \code{"intensity"} (always -1) and \code{"scale"}. +#' @noRd do_define_isotopes <- function(peaks., maxCharge = 3, maxIso = 5, mzIntervalExtension = TRUE) { req_cols <- c("mz", "mzmin", "mzmax", "scmin", "scmax", "scale") @@ -2241,11 +2274,14 @@ do_define_isotopes <- function(peaks., maxCharge = 3, maxIso = 5, return(do.call(rbind, newRois)) } -##' param @peaks. see do_define_isotopes -##' @param polarity character(1) defining the polarity, either \code{"positive"} -##' or \code{"negative"}. -##' @return see do_define_isotopes. -##' @noRd +#' @param peaks. see do_define_isotopes +#' +#' @param polarity character(1) defining the polarity, either \code{"positive"} +#' or \code{"negative"}. +#' +#' @return see do_define_isotopes. +#' +#' @noRd do_define_adducts <- function(peaks., polarity = "positive") { req_cols <- c("mz", "mzmin", "mzmax", "scmin", "scmax", "scale") if (is.null(dim(peaks.))) @@ -2461,56 +2497,60 @@ do_findKalmanROI <- function(mz, int, scantime, valsPerSpect, ## 3) centWave on the predicted isotope ROIs. ## 4) combine both lists of identified peaks removing overlapping ones by ## keeping the peak with the largest signal intensity. -##' @title Core API function for two-step centWave peak detection with isotopes -##' -##' @description The \code{do_findChromPeaks_centWaveWithPredIsoROIs} performs a -##' two-step centWave based peak detection: chromatographic peaks are identified -##' using centWave followed by a prediction of the location of the identified -##' peaks' isotopes in the mz-retention time space. These locations are fed as -##' \emph{regions of interest} (ROIs) to a subsequent centWave run. All non -##' overlapping peaks from these two peak detection runs are reported as -##' the final list of identified peaks. -##' -##' @details For more details on the centWave algorithm see -##' \code{\link{centWave}}. -##' -##' @inheritParams findChromPeaks-centWave -##' @inheritParams findChromPeaks-centWaveWithPredIsoROIs -##' @inheritParams do_findChromPeaks_centWave -##' -##' @family core peak detection functions -##' @return -##' A matrix, each row representing an identified chromatographic peak. All -##' non-overlapping peaks identified in both centWave runs are reported. -##' The matrix columns are: -##' \describe{ -##' \item{mz}{Intensity weighted mean of m/z values of the peaks across scans.} -##' \item{mzmin}{Minimum m/z of the peaks.} -##' \item{mzmax}{Maximum m/z of the peaks.} -##' \item{rt}{Retention time of the peak's midpoint.} -##' \item{rtmin}{Minimum retention time of the peak.} -##' \item{rtmax}{Maximum retention time of the peak.} -##' \item{into}{Integrated (original) intensity of the peak.} -##' \item{intb}{Per-peak baseline corrected integrated peak intensity.} -##' \item{maxo}{Maximum intensity of the peak.} -##' \item{sn}{Signal to noise ratio, defined as \code{(maxo - baseline)/sd}, -##' \code{sd} being the standard deviation of local chromatographic noise.} -##' \item{egauss}{RMSE of Gaussian fit.} -##' } -##' Additional columns for \code{verboseColumns = TRUE}: -##' \describe{ -##' \item{mu}{Gaussian parameter mu.} -##' \item{sigma}{Gaussian parameter sigma.} -##' \item{h}{Gaussian parameter h.} -##' \item{f}{Region number of the m/z ROI where the peak was localized.} -##' \item{dppm}{m/z deviation of mass trace across scanns in ppk.} -##' \item{scale}{Scale on which the peak was localized.} -##' \item{scpos}{Peak position found by wavelet analysis (scan number).} -##' \item{scmin}{Left peak limit found by wavelet analysis (scan number).} -##' \item{scmax}{Right peak limit found by wavelet analysis (scan numer).} -##' } -##' @rdname do_findChromPeaks_centWaveWithPredIsoROIs -##' @author Hendrik Treutler, Johannes Rainer +#' @title Core API function for two-step centWave peak detection with isotopes +#' +#' @description The \code{do_findChromPeaks_centWaveWithPredIsoROIs} performs a +#' two-step centWave based peak detection: chromatographic peaks are +#' identified using centWave followed by a prediction of the location of +#' the identified peaks' isotopes in the mz-retention time space. These +#' locations are fed as \emph{regions of interest} (ROIs) to a subsequent +#' centWave run. All non overlapping peaks from these two peak detection +#' runs are reported as the final list of identified peaks. +#' +#' @details For more details on the centWave algorithm see +#' \code{\link{centWave}}. +#' +#' @inheritParams findChromPeaks-centWave +#' +#' @inheritParams findChromPeaks-centWaveWithPredIsoROIs +#' +#' @inheritParams do_findChromPeaks_centWave +#' +#' @family core peak detection functions +#' +#' @return A matrix, each row representing an identified chromatographic peak. +#' All non-overlapping peaks identified in both centWave runs are reported. +#' The matrix columns are: +#' \describe{ +#' \item{mz}{Intensity weighted mean of m/z values of the peaks across scans.} +#' \item{mzmin}{Minimum m/z of the peaks.} +#' \item{mzmax}{Maximum m/z of the peaks.} +#' \item{rt}{Retention time of the peak's midpoint.} +#' \item{rtmin}{Minimum retention time of the peak.} +#' \item{rtmax}{Maximum retention time of the peak.} +#' \item{into}{Integrated (original) intensity of the peak.} +#' \item{intb}{Per-peak baseline corrected integrated peak intensity.} +#' \item{maxo}{Maximum intensity of the peak.} +#' \item{sn}{Signal to noise ratio, defined as \code{(maxo - baseline)/sd}, +#' \code{sd} being the standard deviation of local chromatographic noise.} +#' \item{egauss}{RMSE of Gaussian fit.} +#' } +#' Additional columns for \code{verboseColumns = TRUE}: +#' \describe{ +#' \item{mu}{Gaussian parameter mu.} +#' \item{sigma}{Gaussian parameter sigma.} +#' \item{h}{Gaussian parameter h.} +#' \item{f}{Region number of the m/z ROI where the peak was localized.} +#' \item{dppm}{m/z deviation of mass trace across scans in ppm.} +#' \item{scale}{Scale on which the peak was localized.} +#' \item{scpos}{Peak position found by wavelet analysis (scan number).} +#' \item{scmin}{Left peak limit found by wavelet analysis (scan number).} +#' \item{scmax}{Right peak limit found by wavelet analysis (scan numer).} +#' } +#' +#' @rdname do_findChromPeaks_centWaveWithPredIsoROIs +#' +#' @author Hendrik Treutler, Johannes Rainer do_findChromPeaks_centWaveWithPredIsoROIs <- function(mz, int, scantime, valsPerSpect, ppm = 25, peakwidth = c(20, 50), snthresh = 10, prefilter = c(3, 100), mzCenterFun = "wMean", @@ -2558,30 +2598,32 @@ do_findChromPeaks_centWaveWithPredIsoROIs <- mzIntervalExtension = mzIntervalExtension, polarity = polarity)) } -##' @description The \code{do_findChromPeaks_centWaveAddPredIsoROIs} performs -##' centWave based peak detection based in regions of interest (ROIs) -##' representing predicted isotopes for the peaks submitted with argument -##' \code{peaks.}. The function returns a matrix with the identified peaks -##' consisting of all input peaks and peaks representing predicted isotopes -##' of these (if found by the centWave algorithm). -##' -##' @param peaks. A matrix or \code{xcmsPeaks} object such as one returned by -##' a call to \code{link{do_findChromPeaks_centWave}} or -##' \code{link{findPeaks.centWave}} (both with \code{verboseColumns = TRUE}) -##' with the peaks for which isotopes should be predicted and used for an -##' additional peak detectoin using the centWave method. Required columns are: -##' \code{"mz"}, \code{"mzmin"}, \code{"mzmax"}, \code{"scmin"}, \code{"scmax"}, -##' \code{"scale"} and \code{"into"}. -##' -##' @param snthresh For \code{do_findChromPeaks_addPredIsoROIs}: -##' numeric(1) defining the signal to noise threshold for the centWave algorithm. -##' For \code{do_findChromPeaks_centWaveWithPredIsoROIs}: numeric(1) defining the -##' signal to noise threshold for the initial (first) centWave run. -##' -##' @inheritParams findChromPeaks-centWave -##' @inheritParams do_findChromPeaks_centWave -##' -##' @rdname do_findChromPeaks_centWaveWithPredIsoROIs +#' @description The \code{do_findChromPeaks_centWaveAddPredIsoROIs} performs +#' centWave based peak detection based in regions of interest (ROIs) +#' representing predicted isotopes for the peaks submitted with argument +#' \code{peaks.}. The function returns a matrix with the identified peaks +#' consisting of all input peaks and peaks representing predicted isotopes +#' of these (if found by the centWave algorithm). +#' +#' @param peaks. A matrix or \code{xcmsPeaks} object such as one returned by +#' a call to \code{link{do_findChromPeaks_centWave}} or +#' \code{link{findPeaks.centWave}} (both with \code{verboseColumns = TRUE}) +#' with the peaks for which isotopes should be predicted and used for an +#' additional peak detectoin using the centWave method. Required columns +#' are: \code{"mz"}, \code{"mzmin"}, \code{"mzmax"}, \code{"scmin"}, +#' \code{"scmax"}, \code{"scale"} and \code{"into"}. +#' +#' @param snthresh For \code{do_findChromPeaks_addPredIsoROIs}: +#' numeric(1) defining the signal to noise threshold for the centWave +#' algorithm. For \code{do_findChromPeaks_centWaveWithPredIsoROIs}: +#' numeric(1) defining the signal to noise threshold for the initial +#' (first) centWave run. +#' +#' @inheritParams findChromPeaks-centWave +#' +#' @inheritParams do_findChromPeaks_centWave +#' +#' @rdname do_findChromPeaks_centWaveWithPredIsoROIs do_findChromPeaks_addPredIsoROIs <- function(mz, int, scantime, valsPerSpect, ppm = 25, peakwidth = c(20, 50), snthresh = 6.25, prefilter = c(3, 100), mzCenterFun = "wMean", diff --git a/R/do_groupChromPeaks-functions.R b/R/do_groupChromPeaks-functions.R index c118a2e57..930fd065c 100644 --- a/R/do_groupChromPeaks-functions.R +++ b/R/do_groupChromPeaks-functions.R @@ -26,6 +26,9 @@ ##' ##' @inheritParams groupChromPeaks-density ##' +##' @param sleep \code{numeric(1)} defining the time to \emph{sleep} between +##' iterations and plot the result from the current iteration. +##' ##' @return A \code{list} with elements \code{"featureDefinitions"} and ##' \code{"peakIndex"}. \code{"featureDefinitions"} is a \code{matrix}, each row ##' representing a (mz-rt) feature (i.e. a peak group) with columns: @@ -71,7 +74,8 @@ ##' head(res$peakIndex) do_groupChromPeaks_density <- function(peaks, sampleGroups, bw = 30, minFraction = 0.5, minSamples = 1, - binSize = 0.25, maxFeatures = 50) { + binSize = 0.25, maxFeatures = 50, + sleep = 0) { if (missing(sampleGroups)) stop("Parameter 'sampleGroups' is missing! This should be a vector of ", "length equal to the number of samples specifying the group ", @@ -82,6 +86,8 @@ do_groupChromPeaks_density <- function(peaks, sampleGroups, stop("'peaks' has to be a 'matrix' or a 'data.frame'!") ## Check that we've got all required columns .reqCols <- c("mz", "rt", "sample") + if (sleep > 0) + .reqCols <- c(.reqCols, "into") if (!all(.reqCols %in% colnames(peaks))) stop("Required columns ", paste0("'", .reqCols[!.reqCols %in% colnames(peaks)],"'", @@ -164,6 +170,23 @@ do_groupChromPeaks_density <- function(peaks, sampleGroups, groupmat[num, 7 + seq(along = gcount)] <- gcount groupindex[[num]] <- sort(peakOrder[(startIdx:endIdx)[gidx]]) } + if (sleep > 0) { + ## Plot the density + plot(den, main = paste(round(min(curMat[,"mz"]), 2), "-", + round(max(curMat[,"mz"]), 2))) + ## Highlight peaks per sample group. + for (j in 1:nSampleGroups) { + ## Which peaks belong to this sample group. + cur_group_samples <- which(sampleGroups == sampleGroupNames[j]) + idx <- curMat[, "sample"] %in% cur_group_samples + points(curMat[idx, "rt"], curMat[idx, "into"] / + max(curMat[, "into"]) * maxden, + col = j, pch=20) + } + for (j in seq(length = snum)) + abline(v = groupmat[num - snum + j, 5:6], lty = "dashed", col = j) + Sys.sleep(sleep) + } } message("OK") diff --git a/R/functions-utils.R b/R/functions-utils.R index 5915f5207..70fcb0dc3 100644 --- a/R/functions-utils.R +++ b/R/functions-utils.R @@ -287,8 +287,8 @@ useOriginalCode <- function(x) { #' @title Weighted mean around maximum #' -#' @describe Calculate a weighted mean of the values around the value with the -#' largest weight. \code{x} could e.g. be mz values and \code{w} the +#' @description Calculate a weighted mean of the values around the value with +#' the largest weight. \code{x} could e.g. be mz values and \code{w} the #' corresponding intensity values. #' #' @param x \code{numeric} vector from which the weighted mean should be diff --git a/R/methods-OnDiskMSnExp.R b/R/methods-OnDiskMSnExp.R index ff0a8cc87..8d97c7de2 100644 --- a/R/methods-OnDiskMSnExp.R +++ b/R/methods-OnDiskMSnExp.R @@ -59,7 +59,17 @@ setMethod("findChromPeaks", ## Restrict to MS1 data. object <- filterMsLevel(object, msLevel. = 1) ## Check if the data is centroided - if (!isCentroided(object[[1]])) + centroided <- isCentroided(object[[1]]) + ## issue #181: if there are too few mass peaks the function + ## returns NA. + if (is.na(centroided)) { + ## check all spectra in the file - takes longer. + centroided <- isCentroided(object) + if (length(which(centroided)) > 0 & + length(which(!centroided)) == 0) + centroided <- TRUE + } + if (!centroided) warning("Your data appears to be not centroided! CentWave", " works best on data in centroid mode.") ## (1) split the object per file. @@ -627,7 +637,17 @@ setMethod("findChromPeaks", ## Restrict to MS1 data. object <- filterMsLevel(object, msLevel. = 1) ## Check if the data is centroided - if (!isCentroided(object[[1]])) + centroided <- isCentroided(object[[1]]) + ## issue #181: if there are too few mass peaks the function + ## returns NA. + if (is.na(centroided)) { + ## check all spectra in the file - takes longer. + centroided <- isCentroided(object) + if (length(which(centroided)) > 0 & + length(which(!centroided)) == 0) + centroided <- TRUE + } + if (!centroided) warning("Your data appears to be not centroided! CentWave", " works best on data in centroid mode.") ## (1) split the object per file. diff --git a/R/methods-xcmsSet.R b/R/methods-xcmsSet.R index 5082d47a4..116ff3636 100644 --- a/R/methods-xcmsSet.R +++ b/R/methods-xcmsSet.R @@ -350,7 +350,8 @@ setMethod("group.density", "xcmsSet", function(object, bw = 30, minfrac = 0.5, minFraction = minfrac, minSamples = minsamp, binSize = mzwid, - maxFeatures = max) + maxFeatures = max, + sleep = sleep) groups(object) <- res$featureDefinitions groupidx(object) <- res$peakIndex diff --git a/inst/NEWS b/inst/NEWS index 0380de3a0..328668c96 100644 --- a/inst/NEWS +++ b/inst/NEWS @@ -1,3 +1,14 @@ +CHANGES IN VERSION 2.99.2 +------------------------- + +BUG FIXES: +- issue #181: problem when isCentroided,Spectrum method returns NA because of + too few peaks in a spectrum. Fixed by checking in such cases all spectra in + the file. +- issue #184: add parameter sleep to do_groupChromPeaks_density function to be + backwards compatible with the old group.density code. + + CHANGES IN VERSION 2.99.1 ------------------------- diff --git a/man/do_findChromPeaks_centWave.Rd b/man/do_findChromPeaks_centWave.Rd index 165cda5e3..e615910e9 100644 --- a/man/do_findChromPeaks_centWave.Rd +++ b/man/do_findChromPeaks_centWave.Rd @@ -86,57 +86,61 @@ should be used for the centWave-wavelets.} } \value{ A matrix, each row representing an identified chromatographic peak, -with columns: -\describe{ -\item{mz}{Intensity weighted mean of m/z values of the peak across scans.} -\item{mzmin}{Minimum m/z of the peak.} -\item{mzmax}{Maximum m/z of the peak.} -\item{rt}{Retention time of the peak's midpoint.} -\item{rtmin}{Minimum retention time of the peak.} -\item{rtmax}{Maximum retention time of the peak.} -\item{into}{Integrated (original) intensity of the peak.} -\item{intb}{Per-peak baseline corrected integrated peak intensity.} -\item{maxo}{Maximum intensity of the peak.} -\item{sn}{Signal to noise ratio, defined as \code{(maxo - baseline)/sd}, -\code{sd} being the standard deviation of local chromatographic noise.} -\item{egauss}{RMSE of Gaussian fit.} -} -Additional columns for \code{verboseColumns = TRUE}: -\describe{ -\item{mu}{Gaussian parameter mu.} -\item{sigma}{Gaussian parameter sigma.} -\item{h}{Gaussian parameter h.} -\item{f}{Region number of the m/z ROI where the peak was localized.} -\item{dppm}{m/z deviation of mass trace across scanns in ppk.} -\item{scale}{Scale on which the peak was localized.} -\item{scpos}{Peak position found by wavelet analysis (scan number).} -\item{scmin}{Left peak limit found by wavelet analysis (scan number).} -\item{scmax}{Right peak limit found by wavelet analysis (scan numer).} -} + with columns: + \describe{ + + \item{mz}{Intensity weighted mean of m/z values of the peak across + scans.} + \item{mzmin}{Minimum m/z of the peak.} + \item{mzmax}{Maximum m/z of the peak.} + \item{rt}{Retention time of the peak's midpoint.} + \item{rtmin}{Minimum retention time of the peak.} + \item{rtmax}{Maximum retention time of the peak.} + \item{into}{Integrated (original) intensity of the peak.} + \item{intb}{Per-peak baseline corrected integrated peak intensity.} + \item{maxo}{Maximum intensity of the peak.} + \item{sn}{Signal to noise ratio, defined as \code{(maxo - baseline)/sd}, + \code{sd} being the standard deviation of local chromatographic noise.} + \item{egauss}{RMSE of Gaussian fit.} + } + Additional columns for \code{verboseColumns = TRUE}: + \describe{ + + \item{mu}{Gaussian parameter mu.} + \item{sigma}{Gaussian parameter sigma.} + \item{h}{Gaussian parameter h.} + \item{f}{Region number of the m/z ROI where the peak was localized.} + \item{dppm}{m/z deviation of mass trace across scans in ppm.} + \item{scale}{Scale on which the peak was localized.} + \item{scpos}{Peak position found by wavelet analysis (scan number).} + \item{scmin}{Left peak limit found by wavelet analysis (scan number).} + \item{scmax}{Right peak limit found by wavelet analysis (scan numer).} + } } \description{ This function performs peak density and wavelet based -chromatographic peak detection for high resolution LC/MS data in centroid -mode [Tautenhahn 2008]. + chromatographic peak detection for high resolution LC/MS data in centroid + mode [Tautenhahn 2008]. } \details{ This algorithm is most suitable for high resolution -LC/\{TOF,OrbiTrap,FTICR\}-MS data in centroid mode. In the first phase the -method identifies \emph{regions of interest} (ROIs) representing mass traces -that are characterized as regions with less than \code{ppm} m/z deviation in -consecutive scans in the LC/MS map. These ROIs are then subsequently -analyzed using continuous wavelet transform (CWT) to locate chromatographic -peaks on different scales. The first analysis step is skipped, if regions -of interest are passed with the \code{roiList} parameter. + LC/\{TOF,OrbiTrap,FTICR\}-MS data in centroid mode. In the first phase + the method identifies \emph{regions of interest} (ROIs) representing + mass traces that are characterized as regions with less than \code{ppm} + m/z deviation in consecutive scans in the LC/MS map. These ROIs are then + subsequently analyzed using continuous wavelet transform (CWT) to locate + chromatographic peaks on different scales. The first analysis step is + skipped, if regions of interest are passed with the \code{roiList} + parameter. } \note{ The \emph{centWave} was designed to work on centroided mode, thus it -is expected that such data is presented to the function. + is expected that such data is presented to the function. -This function exposes core chromatographic peak detection functionality of -the \emph{centWave} method. While this function can be called directly, -users will generally call the corresponding method for the data object -instead. + This function exposes core chromatographic peak detection functionality + of the \emph{centWave} method. While this function can be called + directly, users will generally call the corresponding method for the + data object instead. } \examples{ ## Load the test file @@ -159,8 +163,8 @@ head(res) } \references{ Ralf Tautenhahn, Christoph B\"{o}ttcher, and Steffen Neumann "Highly -sensitive feature detection for high resolution LC/MS" \emph{BMC Bioinformatics} -2008, 9:504 + sensitive feature detection for high resolution LC/MS" + \emph{BMC Bioinformatics} 2008, 9:504 } \seealso{ \code{\link{centWave}} for the standard user interface method. diff --git a/man/do_findChromPeaks_centWaveWithPredIsoROIs.Rd b/man/do_findChromPeaks_centWaveWithPredIsoROIs.Rd index eee8fa2d6..ab399c0fb 100644 --- a/man/do_findChromPeaks_centWaveWithPredIsoROIs.Rd +++ b/man/do_findChromPeaks_centWaveWithPredIsoROIs.Rd @@ -42,9 +42,10 @@ peak width in chromatographic space. Given as a range (min, max) in seconds.} \item{snthresh}{For \code{do_findChromPeaks_addPredIsoROIs}: -numeric(1) defining the signal to noise threshold for the centWave algorithm. -For \code{do_findChromPeaks_centWaveWithPredIsoROIs}: numeric(1) defining the -signal to noise threshold for the initial (first) centWave run.} +numeric(1) defining the signal to noise threshold for the centWave +algorithm. For \code{do_findChromPeaks_centWaveWithPredIsoROIs}: +numeric(1) defining the signal to noise threshold for the initial +(first) centWave run.} \item{prefilter}{\code{numeric(2)}: \code{c(k, I)} specifying the prefilter step for the first analysis step (ROI detection). Mass traces are only @@ -119,60 +120,60 @@ Currently not used, but has to be \code{"positive"}, \code{"negative"} or a call to \code{link{do_findChromPeaks_centWave}} or \code{link{findPeaks.centWave}} (both with \code{verboseColumns = TRUE}) with the peaks for which isotopes should be predicted and used for an -additional peak detectoin using the centWave method. Required columns are: -\code{"mz"}, \code{"mzmin"}, \code{"mzmax"}, \code{"scmin"}, \code{"scmax"}, -\code{"scale"} and \code{"into"}.} +additional peak detectoin using the centWave method. Required columns +are: \code{"mz"}, \code{"mzmin"}, \code{"mzmax"}, \code{"scmin"}, +\code{"scmax"}, \code{"scale"} and \code{"into"}.} } \value{ -A matrix, each row representing an identified chromatographic peak. All -non-overlapping peaks identified in both centWave runs are reported. -The matrix columns are: -\describe{ -\item{mz}{Intensity weighted mean of m/z values of the peaks across scans.} -\item{mzmin}{Minimum m/z of the peaks.} -\item{mzmax}{Maximum m/z of the peaks.} -\item{rt}{Retention time of the peak's midpoint.} -\item{rtmin}{Minimum retention time of the peak.} -\item{rtmax}{Maximum retention time of the peak.} -\item{into}{Integrated (original) intensity of the peak.} -\item{intb}{Per-peak baseline corrected integrated peak intensity.} -\item{maxo}{Maximum intensity of the peak.} -\item{sn}{Signal to noise ratio, defined as \code{(maxo - baseline)/sd}, -\code{sd} being the standard deviation of local chromatographic noise.} -\item{egauss}{RMSE of Gaussian fit.} -} -Additional columns for \code{verboseColumns = TRUE}: -\describe{ -\item{mu}{Gaussian parameter mu.} -\item{sigma}{Gaussian parameter sigma.} -\item{h}{Gaussian parameter h.} -\item{f}{Region number of the m/z ROI where the peak was localized.} -\item{dppm}{m/z deviation of mass trace across scanns in ppk.} -\item{scale}{Scale on which the peak was localized.} -\item{scpos}{Peak position found by wavelet analysis (scan number).} -\item{scmin}{Left peak limit found by wavelet analysis (scan number).} -\item{scmax}{Right peak limit found by wavelet analysis (scan numer).} -} +A matrix, each row representing an identified chromatographic peak. + All non-overlapping peaks identified in both centWave runs are reported. + The matrix columns are: + \describe{ + \item{mz}{Intensity weighted mean of m/z values of the peaks across scans.} + \item{mzmin}{Minimum m/z of the peaks.} + \item{mzmax}{Maximum m/z of the peaks.} + \item{rt}{Retention time of the peak's midpoint.} + \item{rtmin}{Minimum retention time of the peak.} + \item{rtmax}{Maximum retention time of the peak.} + \item{into}{Integrated (original) intensity of the peak.} + \item{intb}{Per-peak baseline corrected integrated peak intensity.} + \item{maxo}{Maximum intensity of the peak.} + \item{sn}{Signal to noise ratio, defined as \code{(maxo - baseline)/sd}, + \code{sd} being the standard deviation of local chromatographic noise.} + \item{egauss}{RMSE of Gaussian fit.} + } + Additional columns for \code{verboseColumns = TRUE}: + \describe{ + \item{mu}{Gaussian parameter mu.} + \item{sigma}{Gaussian parameter sigma.} + \item{h}{Gaussian parameter h.} + \item{f}{Region number of the m/z ROI where the peak was localized.} + \item{dppm}{m/z deviation of mass trace across scans in ppm.} + \item{scale}{Scale on which the peak was localized.} + \item{scpos}{Peak position found by wavelet analysis (scan number).} + \item{scmin}{Left peak limit found by wavelet analysis (scan number).} + \item{scmax}{Right peak limit found by wavelet analysis (scan numer).} + } } \description{ The \code{do_findChromPeaks_centWaveWithPredIsoROIs} performs a -two-step centWave based peak detection: chromatographic peaks are identified -using centWave followed by a prediction of the location of the identified -peaks' isotopes in the mz-retention time space. These locations are fed as -\emph{regions of interest} (ROIs) to a subsequent centWave run. All non -overlapping peaks from these two peak detection runs are reported as -the final list of identified peaks. + two-step centWave based peak detection: chromatographic peaks are + identified using centWave followed by a prediction of the location of + the identified peaks' isotopes in the mz-retention time space. These + locations are fed as \emph{regions of interest} (ROIs) to a subsequent + centWave run. All non overlapping peaks from these two peak detection + runs are reported as the final list of identified peaks. The \code{do_findChromPeaks_centWaveAddPredIsoROIs} performs -centWave based peak detection based in regions of interest (ROIs) -representing predicted isotopes for the peaks submitted with argument -\code{peaks.}. The function returns a matrix with the identified peaks -consisting of all input peaks and peaks representing predicted isotopes -of these (if found by the centWave algorithm). + centWave based peak detection based in regions of interest (ROIs) + representing predicted isotopes for the peaks submitted with argument + \code{peaks.}. The function returns a matrix with the identified peaks + consisting of all input peaks and peaks representing predicted isotopes + of these (if found by the centWave algorithm). } \details{ For more details on the centWave algorithm see -\code{\link{centWave}}. + \code{\link{centWave}}. } \seealso{ Other core peak detection functions: \code{\link{do_findChromPeaks_centWave}}, diff --git a/man/do_findChromPeaks_massifquant.Rd b/man/do_findChromPeaks_massifquant.Rd index a28658c86..ca2fab745 100644 --- a/man/do_findChromPeaks_massifquant.Rd +++ b/man/do_findChromPeaks_massifquant.Rd @@ -112,45 +112,46 @@ centWave algorithm, which includes wavelet estimation.} } \value{ A matrix, each row representing an identified chromatographic peak, -with columns: -\describe{ -\item{mz}{Intensity weighted mean of m/z values of the peaks across -scans.} -\item{mzmin}{Minumum m/z of the peak.} -\item{mzmax}{Maximum m/z of the peak.} -\item{rtmin}{Minimum retention time of the peak.} -\item{rtmax}{Maximum retention time of the peak.} -\item{rt}{Retention time of the peak's midpoint.} -\item{into}{Integrated (original) intensity of the peak.} -\item{maxo}{Maximum intensity of the peak.} -} -If \code{withWave} is set to \code{TRUE}, the result is the same as -returned by the \code{\link{do_findChromPeaks_centWave}} method. + with columns: + \describe{ + \item{mz}{Intensity weighted mean of m/z values of the peaks across + scans.} + \item{mzmin}{Minumum m/z of the peak.} + \item{mzmax}{Maximum m/z of the peak.} + \item{rtmin}{Minimum retention time of the peak.} + \item{rtmax}{Maximum retention time of the peak.} + \item{rt}{Retention time of the peak's midpoint.} + \item{into}{Integrated (original) intensity of the peak.} + \item{maxo}{Maximum intensity of the peak.} + } + + If \code{withWave} is set to \code{TRUE}, the result is the same as + returned by the \code{\link{do_findChromPeaks_centWave}} method. } \description{ Massifquant is a Kalman filter (KF)-based chromatographic peak -detection for XC-MS data in centroid mode. The identified peaks -can be further refined with the \emph{centWave} method (see -\code{\link{do_findChromPeaks_centWave}} for details on centWave) -by specifying \code{withWave = TRUE}. + detection for XC-MS data in centroid mode. The identified peaks + can be further refined with the \emph{centWave} method (see + \code{\link{do_findChromPeaks_centWave}} for details on centWave) + by specifying \code{withWave = TRUE}. } \details{ This algorithm's performance has been tested rigorously -on high resolution LC/{OrbiTrap, TOF}-MS data in centroid mode. -Simultaneous kalman filters identify peaks and calculate their -area under the curve. The default parameters are set to operate on -a complex LC-MS Orbitrap sample. Users will find it useful to do some -simple exploratory data analysis to find out where to set a minimum -intensity, and identify how many scans an average peak spans. The -\code{consecMissedLimit} parameter has yielded good performance on -Orbitrap data when set to (\code{2}) and on TOF data it was found best -to be at (\code{1}). This may change as the algorithm has yet to be -tested on many samples. The \code{criticalValue} parameter is perhaps -most dificult to dial in appropriately and visual inspection of peak -identification is the best suggested tool for quick optimization. -The \code{ppm} and \code{checkBack} parameters have shown less influence -than the other parameters and exist to give users flexibility and -better accuracy. + on high resolution LC/{OrbiTrap, TOF}-MS data in centroid mode. + Simultaneous kalman filters identify peaks and calculate their + area under the curve. The default parameters are set to operate on + a complex LC-MS Orbitrap sample. Users will find it useful to do some + simple exploratory data analysis to find out where to set a minimum + intensity, and identify how many scans an average peak spans. The + \code{consecMissedLimit} parameter has yielded good performance on + Orbitrap data when set to (\code{2}) and on TOF data it was found best + to be at (\code{1}). This may change as the algorithm has yet to be + tested on many samples. The \code{criticalValue} parameter is perhaps + most dificult to dial in appropriately and visual inspection of peak + identification is the best suggested tool for quick optimization. + The \code{ppm} and \code{checkBack} parameters have shown less influence + than the other parameters and exist to give users flexibility and + better accuracy. } \examples{ library(faahKO) diff --git a/man/do_findChromPeaks_matchedFilter.Rd b/man/do_findChromPeaks_matchedFilter.Rd index c3e7d58b9..9b24370ac 100644 --- a/man/do_findChromPeaks_matchedFilter.Rd +++ b/man/do_findChromPeaks_matchedFilter.Rd @@ -65,49 +65,51 @@ returned instead of values for m/z and retention times.} } \value{ A matrix, each row representing an identified chromatographic peak, -with columns: -\describe{ -\item{mz}{Intensity weighted mean of m/z values of the peak across scans.} -\item{mzmin}{Minimum m/z of the peak.} -\item{mzmax}{Maximum m/z of the peak.} -\item{rt}{Retention time of the peak's midpoint.} -\item{rtmin}{Minimum retention time of the peak.} -\item{rtmax}{Maximum retention time of the peak.} -\item{into}{Integrated (original) intensity of the peak.} -\item{intf}{Integrated intensity of the filtered peak.} -\item{maxo}{Maximum intensity of the peak.} -\item{maxf}{Maximum intensity of the filtered peak.} -\item{i}{Rank of peak in merged EIC (\code{<= max}).} -\item{sn}{Signal to noise ratio of the peak} -} + with columns: + \describe{ + \item{mz}{Intensity weighted mean of m/z values of the peak across scans.} + \item{mzmin}{Minimum m/z of the peak.} + \item{mzmax}{Maximum m/z of the peak.} + \item{rt}{Retention time of the peak's midpoint.} + \item{rtmin}{Minimum retention time of the peak.} + \item{rtmax}{Maximum retention time of the peak.} + \item{into}{Integrated (original) intensity of the peak.} + \item{intf}{Integrated intensity of the filtered peak.} + \item{maxo}{Maximum intensity of the peak.} + \item{maxf}{Maximum intensity of the filtered peak.} + \item{i}{Rank of peak in merged EIC (\code{<= max}).} + \item{sn}{Signal to noise ratio of the peak} + } } \description{ This function identifies peaks in the chromatographic -time domain as described in [Smith 2006]. The intensity values are -binned by cutting The LC/MS data into slices (bins) of a mass unit -(\code{binSize} m/z) wide. Within each bin the maximal intensity is -selected. The peak detection is then performed in each bin by -extending it based on the \code{steps} parameter to generate slices -comprising bins \code{current_bin - steps +1} to \code{current_bin + steps - 1}. -Each of these slices is then filtered with matched filtration using -a second-derative Gaussian as the model peak shape. After filtration -peaks are detected using a signal-to-ration cut-off. For more details -and illustrations see [Smith 2006]. + time domain as described in [Smith 2006]. The intensity values are + binned by cutting The LC/MS data into slices (bins) of a mass unit + (\code{binSize} m/z) wide. Within each bin the maximal intensity is + selected. The peak detection is then performed in each bin by + extending it based on the \code{steps} parameter to generate slices + comprising bins \code{current_bin - steps +1} to + \code{current_bin + steps - 1}. + Each of these slices is then filtered with matched filtration using + a second-derative Gaussian as the model peak shape. After filtration + peaks are detected using a signal-to-ration cut-off. For more details + and illustrations see [Smith 2006]. } \details{ The intensities are binned by the provided m/z values within each -spectrum (scan). Binning is performed such that the bins are centered around -the m/z values (i.e. the first bin includes all m/z values between -\code{min(mz) - bin_size/2} and \code{min(mz) + bin_size/2}). + spectrum (scan). Binning is performed such that the bins are centered + around the m/z values (i.e. the first bin includes all m/z values between + \code{min(mz) - bin_size/2} and \code{min(mz) + bin_size/2}). -For more details on binning and missing value imputation see -\code{\link{binYonX}} and \code{\link{imputeLinInterpol}} methods. + For more details on binning and missing value imputation see + \code{\link{binYonX}} and \code{\link{imputeLinInterpol}} methods. } \note{ This function exposes core peak detection functionality of -the \emph{matchedFilter} method. While this function can be called directly, -users will generally call the corresponding method for the data object -instead (e.g. the \code{link{findPeaks.matchedFilter}} method). + the \emph{matchedFilter} method. While this function can be called + directly, users will generally call the corresponding method for the + data object instead (e.g. the \code{link{findPeaks.matchedFilter}} + method). } \examples{ ## Load the test file @@ -133,8 +135,8 @@ Profiling Using Nonlinear Peak Alignment, Matching, and Identification" } \seealso{ \code{\link{binYonX}} for a binning function, -\code{\link{imputeLinInterpol}} for the interpolation of missing values. -\code{\link{matchedFilter}} for the standard user interface method. + \code{\link{imputeLinInterpol}} for the interpolation of missing values. + \code{\link{matchedFilter}} for the standard user interface method. Other core peak detection functions: \code{\link{do_findChromPeaks_centWaveWithPredIsoROIs}}, \code{\link{do_findChromPeaks_centWave}}, diff --git a/man/do_findPeaks_MSW.Rd b/man/do_findPeaks_MSW.Rd index 601bf0c1e..ada00f4fb 100644 --- a/man/do_findPeaks_MSW.Rd +++ b/man/do_findPeaks_MSW.Rd @@ -3,7 +3,7 @@ \name{do_findPeaks_MSW} \alias{do_findPeaks_MSW} \title{Core API function for single-spectrum non-chromatography MS data -peak detection} + peak detection} \usage{ do_findPeaks_MSW(mz, int, snthresh = 3, verboseColumns = FALSE, ...) } @@ -24,35 +24,35 @@ columns should be returned.} } \value{ A matrix, each row representing an identified peak, with columns: -\describe{ -\item{mz}{m/z value of the peak at the centroid position.} -\item{mzmin}{Minimum m/z of the peak.} -\item{mzmax}{Maximum m/z of the peak.} -\item{rt}{Always \code{-1}.} -\item{rtmin}{Always \code{-1}.} -\item{rtmax}{Always \code{-1}.} -\item{into}{Integrated (original) intensity of the peak.} -\item{maxo}{Maximum intensity of the peak.} -\item{intf}{Always \code{NA}.} -\item{maxf}{Maximum MSW-filter response of the peak.} -\item{sn}{Signal to noise ratio.} -} + \describe{ + \item{mz}{m/z value of the peak at the centroid position.} + \item{mzmin}{Minimum m/z of the peak.} + \item{mzmax}{Maximum m/z of the peak.} + \item{rt}{Always \code{-1}.} + \item{rtmin}{Always \code{-1}.} + \item{rtmax}{Always \code{-1}.} + \item{into}{Integrated (original) intensity of the peak.} + \item{maxo}{Maximum intensity of the peak.} + \item{intf}{Always \code{NA}.} + \item{maxf}{Maximum MSW-filter response of the peak.} + \item{sn}{Signal to noise ratio.} + } } \description{ This function performs peak detection in mass spectrometry -direct injection spectrum using a wavelet based algorithm. + direct injection spectrum using a wavelet based algorithm. } \details{ This is a wrapper around the peak picker in Bioconductor's -\code{MassSpecWavelet} package calling -\code{\link[MassSpecWavelet]{peakDetectionCWT}} and -\code{\link[MassSpecWavelet]{tuneInPeakInfo}} functions. See the -\emph{xcmsDirect} vignette for more information. + \code{MassSpecWavelet} package calling + \code{\link[MassSpecWavelet]{peakDetectionCWT}} and + \code{\link[MassSpecWavelet]{tuneInPeakInfo}} functions. See the + \emph{xcmsDirect} vignette for more information. } \seealso{ -##' \code{\link{MSW}} for the standard user interface -method. \code{\link[MassSpecWavelet]{peakDetectionCWT}} from the -\code{MassSpecWavelet} package. +\code{\link{MSW}} for the standard user interface + method. \code{\link[MassSpecWavelet]{peakDetectionCWT}} from the + \code{MassSpecWavelet} package. Other core peak detection functions: \code{\link{do_findChromPeaks_centWaveWithPredIsoROIs}}, \code{\link{do_findChromPeaks_centWave}}, diff --git a/man/do_groupChromPeaks_density.Rd b/man/do_groupChromPeaks_density.Rd index df69aed12..b06249cd5 100644 --- a/man/do_groupChromPeaks_density.Rd +++ b/man/do_groupChromPeaks_density.Rd @@ -6,7 +6,7 @@ grouping} \usage{ do_groupChromPeaks_density(peaks, sampleGroups, bw = 30, minFraction = 0.5, - minSamples = 1, binSize = 0.25, maxFeatures = 50) + minSamples = 1, binSize = 0.25, maxFeatures = 50, sleep = 0) } \arguments{ \item{peaks}{A \code{matrix} or \code{data.frame} with the mz values and @@ -36,6 +36,9 @@ in mz dimension.} \item{maxFeatures}{\code{numeric(1)} with the maximum number of peak groups to be identified in a single mz slice.} + +\item{sleep}{\code{numeric(1)} defining the time to \emph{sleep} between +iterations and plot the result from the current iteration.} } \value{ A \code{list} with elements \code{"featureDefinitions"} and