Mercurial > repos > lecorguille > xcms_summary
changeset 12:27e7da5f6848 draft
planemo upload for repository https://github.com/workflow4metabolomics/xcms commit a6f5f18b3d6130f7d7fbb9f2df856838c6217797
author | lecorguille |
---|---|
date | Fri, 07 Apr 2017 07:37:23 -0400 |
parents | cb599006715f |
children | a5347d57899f |
files | Makefile README.rst abims_xcms_summary.xml macros.xml planemo_test.sh static/images/xcms_summary_workflow.png test-data/faahKO-single.xset.merged.group.retcor.group.fillpeaks.RData test-data/faahKO-single.xset.merged.group.retcor.group.fillpeaks.summary.html test-data/faahKO.xset.group.retcor.group.fillpeaks.summary.html test-data/summary.html tool_dependencies.xml xcms_summary.r |
diffstat | 12 files changed, 349 insertions(+), 207 deletions(-) [+] |
line wrap: on
line diff
--- a/Makefile Mon Jan 30 08:54:06 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,23 +0,0 @@ -# USAGE: make [install|clean] - -# -------- VARIABLE -------- - -OBJ=xcms_summary.tgz -DEP=abims_xcms_summary.xml xcms_summary.r tool_dependencies.xml repository_dependencies.xml test-data - - -# ------------------------ - -all: $(OBJ) - -$(OBJ): $(DEP) - tar --exclude=".svn" -zchf $@ $^ - -# ------------------------ - -install: $(OBJ) - mv *.tgz ~ - -clean: - rm *.tgz -
--- a/README.rst Mon Jan 30 08:54:06 2017 -0500 +++ b/README.rst Fri Apr 07 07:37:23 2017 -0400 @@ -2,6 +2,10 @@ Changelog/News -------------- +**Version 1.0.3 - 03/02/2017** + +- IMPROVEMENT: xcms.summary can deal with merged individual data + **Version 1.0.2 - 06/07/2016** - UPGRADE: upgrate the xcms version from 1.44.0 to 1.46.0 @@ -16,12 +20,3 @@ - NEW: Create a summary of XCMS analysis -Test Status ------------ - -Planemo test using conda: failed - -Planemo test using source env.sh: passed - -Planemo shed_test : passed -
--- a/abims_xcms_summary.xml Mon Jan 30 08:54:06 2017 -0500 +++ b/abims_xcms_summary.xml Fri Apr 07 07:37:23 2017 -0400 @@ -1,46 +1,50 @@ -<tool id="abims_xcms_summary" name="xcms.summary" version="1.0.2"> - +<tool id="abims_xcms_summary" name="xcms.summary" version="1.0.3"> + <description>Create a summary of XCMS analysis</description> <macros> <import>macros.xml</import> - </macros> + </macros> <requirements> <requirement type="package" version="1.26.0">bioconductor-camera</requirement> <requirement type="package" version="1.1_4">r-batch</requirement> </requirements> - + <expand macro="stdio"/> - + <command><![CDATA[ $__tool_directory__/xcms_summary.r - image $image - htmlOutput $htmlOutput + image '$image' + htmlOutput '$htmlOutput' user_email $__user_email__ - + ]]></command> - + <inputs> <param name="image" type="data" format="rdata.xcms.raw,rdata.xcms.group,rdata.xcms.retcor,rdata.xcms.fillpeaks,rdata.camera.quick,rdata.camera.positive,rdata.camera.negative,rdata" label="xset RData file" help="output file from another function xcms (xcmsSet, group, retcor, fillpeaks etc.)" /> </inputs> - + <outputs> <data name="htmlOutput" format="html" label="xcms summary html" /> </outputs> - + <tests> <test> <param name="image" value="faahKO.xset.group.retcor.group.fillpeaks.RData" /> - <output name="htmlOutput" file="summary.html" /> + <output name="htmlOutput" file="faahKO.xset.group.retcor.group.fillpeaks.summary.html" /> + </test> + <test> + <param name="image" value="faahKO-single.xset.merged.group.retcor.group.fillpeaks.RData" /> + <output name="htmlOutput" file="faahKO-single.xset.merged.group.retcor.group.fillpeaks.summary.html" /> </test> </tests> - + <help><![CDATA[ - + @HELP_AUTHORS@ ============ @@ -51,14 +55,40 @@ Description ----------- -This tool provide a HTML summary which summarizes your analysis using the [W4M] XCMS and CAMERA tools +This tool provide a HTML summary which summarizes your analysis using the [W4M] XCMS and CAMERA tools + +----------------- +Workflow position +----------------- + +**Upstream tools** +========================= ================= ===================== ========== +Name output file format parameter +========================= ================= ===================== ========== +xcms.xcmsSet xset.RData rdata.xcms.raw RData file +------------------------- ----------------- --------------------- ---------- +xcms.group xset.RData rdata.xcms.group RData file +------------------------- ----------------- --------------------- ---------- +xcms.retcor xset.RData rdata.xcms.retcor RData file +------------------------- ----------------- --------------------- ---------- +xcms.fillpeaks xset.RData rdata.xcms.fillpeaks RData file +------------------------- ----------------- --------------------- ---------- +CAMERA.annotate xset.RData rdata.camera.* RData file +========================= ================= ===================== ========== + + +.. image:: xcms_summary_workflow.png --------------------------------------------------- Changelog/News -------------- +**Version 1.0.3 - 03/02/2017** + +- IMPROVEMENT: xcms.summary can deal with merged individual data + **Version 1.0.2 - 06/07/2016** - UPGRADE: upgrate the xcms version from 1.44.0 to 1.46.0
--- a/macros.xml Mon Jan 30 08:54:06 2017 -0500 +++ b/macros.xml Fri Apr 07 07:37:23 2017 -0400 @@ -7,6 +7,11 @@ <requirement type="package" version="1.1_4">r-batch</requirement> </requirements> </xml> + <xml name="requirements_light"> + <requirements> + <requirement type="package" version="1.46.0">bioconductor-xcms</requirement> + </requirements> + </xml> <xml name="stdio"> <stdio> <exit_code range="1" level="fatal" /> @@ -20,41 +25,101 @@ <token name="@COMMAND_LOG_EXIT@"> ; return=\$?; - mv log.txt $log; - cat $log; + mv log.txt '$log'; + cat '$log'; sh -c "exit \$return" </token> <!-- zipfile load for planemo test --> - <token name="@COMMAND_ZIPFILE_LOAD@"> - #if $zipfile_load_conditional.zipfile_load_select == "yes": - #if $zipfile_load_conditional.zip_file: - zipfile $zipfile_load_conditional.zip_file + <token name="@COMMAND_FILE_LOAD@"> + #if $file_load_section.file_load_conditional.file_load_select == "yes": + #if $file_load_section.file_load_conditional.input[0].is_of_type("mzxml") or $file_load_section.file_load_conditional.input[0].is_of_type("mzml") or $file_load_section.file_load_conditional.input[0].is_of_type("mzdata") or $file_load_section.file_load_conditional.input[0].is_of_type("netcdf"): + #set singlefile_galaxyPath = ','.join( [ str( $single_file ) for $single_file in $file_load_section.file_load_conditional.input ] ) + #set singlefile_sampleName = ','.join( [ str( $single_file.name ) for $single_file in $file_load_section.file_load_conditional.input ] ) + + singlefile_galaxyPath '$singlefile_galaxyPath' singlefile_sampleName '$singlefile_sampleName' + #else + zipfile '$file_load_section.file_load_conditional.input' #end if #end if </token> - <xml name="zipfile_load"> - <conditional name="zipfile_load_conditional"> - <param name="zipfile_load_select" type="select" label="Resubmit your zip file" help="Use only if you get a message which say that your original zip file have been deleted on the server." > - <option value="no" >no need</option> - <option value="yes">yes</option> - </param> - <when value="no"> + <xml name="input_file_load"> + <section name="file_load_section" title="Resubmit your raw dataset or your zip file"> + <conditional name="file_load_conditional"> + <param name="file_load_select" type="select" label="Resubmit your dataset or your zip file" help="Use only if you get a message which say that your original dataset or zip file have been deleted on the server." > + <option value="no" >no need</option> + <option value="yes" >yes</option> + </param> + <when value="no"> + </when> + <when value="yes"> + <param name="input" type="data" format="mzxml,mzml,mzdata,netcdf,no_unzip.zip,zip" multiple="true" label="File(s) from your history containing your chromatograms" help="Single file mode for the format: mzxml, mzml, mzdata and netcdf. Zip file mode for the format: no_unzip.zip, zip. See the help section below." /> + </when> + </conditional> + </section> + </xml> + + <xml name="test_file_load_zip"> + <section name="file_load_section"> + <conditional name="file_load_conditional"> + <param name="file_load_select" value="yes" /> + <param name="input" value="faahKO_reduce.zip" ftype="zip" /> + </conditional> + </section> + </xml> + + <xml name="test_file_load_single"> + <section name="file_load_section"> + <conditional name="file_load_conditional"> + <param name="file_load_select" value="yes" /> + <param name="input" value="wt15.CDF,ko16.CDF,ko15.CDF,wt16.CDF" ftype="netcdf" /> + </conditional> + </section> + </xml> + + <token name="@COMMAND_PEAKLIST@"> + #if $peaklist.peaklistBool + variableMetadataOutput '$variableMetadata' + dataMatrixOutput '$dataMatrix' + convertRTMinute $peaklist.convertRTMinute + numDigitsMZ $peaklist.numDigitsMZ + numDigitsRT $peaklist.numDigitsRT + intval $peaklist.intval + #end if + </token> + + <xml name="input_peaklist"> + <conditional name="peaklist"> + <param name="peaklistBool" type="boolean" label="Get a Peak List" /> + <when value="true"> + <param name="convertRTMinute" type="boolean" checked="false" truevalue="TRUE" falsevalue="FALSE" label="Convert retention time (seconds) into minutes" help="Convert the columns rtmed, rtmin and rtmax into minutes"/> + <param name="numDigitsMZ" type="integer" value="4" label="Number of decimal places for mass values reported in ions' identifiers." help="A minimum of 4 decimal places is recommended. Useful to avoid duplicates within identifiers" /> + <param name="numDigitsRT" type="integer" value="0" label="Number of decimal places for retention time values reported in ions' identifiers." help="Useful to avoid duplicates within identifiers" /> + <param name="intval" type="select" label="Reported intensity values" help="[intval] See the help section below"> + <option value="into" selected="true">into</option> + <option value="maxo">maxo</option> + <option value="intb">intb</option> + </param> </when> - <when value="yes"> - <param name="zip_file" type="data" format="no_unzip.zip,zip" label="Zip file" /> - </when> + <when value="false" /> </conditional> </xml> - + <xml name="output_peaklist" token_function=""> + <data name="variableMetadata" format="tabular" label="${image.name[:-6]}.@FUNCTION@.variableMetadata.tsv"> + <filter>(peaklist['peaklistBool'])</filter> + </data> + <data name="dataMatrix" format="tabular" label="${image.name[:-6]}.@FUNCTION@.dataMatrix.tsv" > + <filter>(peaklist['peaklistBool'])</filter> + </data> + </xml> <token name="@HELP_AUTHORS@"> .. class:: infomark -**Authors** Colin A. Smith csmith@scripps.edu, Ralf Tautenhahn rtautenh@gmail.com, Steffen Neumann sneumann@ipb-halle.de, Paul Benton hpaul.benton08@imperial.ac.uk and Christopher Conley cjconley@ucdavis.edu +**Authors** Colin A. Smith csmith@scripps.edu, Ralf Tautenhahn rtautenh@gmail.com, Steffen Neumann sneumann@ipb-halle.de, Paul Benton hpaul.benton08@imperial.ac.uk and Christopher Conley cjconley@ucdavis.edu .. class:: infomark
--- a/planemo_test.sh Mon Jan 30 08:54:06 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,30 +0,0 @@ -# Example of planemo command to launch test - - - -# -- Use of installed package environments -# after having installing package on a local galaxy instance -source /w/galaxy/dev/shed_tools_tool_dependency_dir/R/3.1.2/iuc/package_r_3_1_2/1ca39eb16186/env.sh -source /w/galaxy/dev/shed_tools_tool_dependency_dir/bioconductor-camera/1.22.0/lecorguille/package_bioconductor_camera_1_22_0/22cec61d66c2/env.sh -planemo test --install_galaxy - -#All 1 test(s) executed passed. -#abims_xcms_summary[0]: passed - - -# -- Use of conda dependencies -planemo conda_init --conda_prefix /tmp/mc -planemo conda_install --conda_prefix /tmp/mc . -planemo test --install_galaxy --conda_prefix /tmp/mc --conda_dependency_resolution - -#All 1 test(s) executed passed. -#abims_xcms_summary[0]: passed - - -# -- Use of shed_test -planemo shed_test --install_galaxy - -#All 1 test(s) executed passed. -#toolshed.g2.bx.psu.edu/repos/lecorguille/xcms_summary/abims_xcms_summary/1.0.0[0]: passed - -
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/faahKO-single.xset.merged.group.retcor.group.fillpeaks.summary.html Fri Apr 07 07:37:23 2017 -0400 @@ -0,0 +1,115 @@ +<!DOCTYPE html> +<HTML lang='en'> +<HEAD> +<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' /> +<title>[W4M] XCMS analysis summary</title> +<style> +table, tr, td, th { border: 1px solid #000000; border-collapse:collapse; } +td,th { padding: 5px; padding-right: 12px; } +th { background: #898989; text-align:left;color: white;} +h2 { color: #FFA212; } +ul li { margin-bottom:10px; } +</style> +</HEAD> +<BODY> +<div><h1>___ XCMS analysis summary using Workflow4Metabolomics ___</h1> +</div> +<h2>Samples used:</h2> +<div><table> +<tr><th>sample</th><th>filename</th><th>md5sum<sup>*</sup></th></tr> +<tr> <td> ko15 </td> <td> ./ko15.CDF </td> <td> 4698c36c0b3af007faf70975c04ccf2a </td> </tr><tr> <td> ko16 </td> <td> ./ko16.CDF </td> <td> afaeed94ced3140bc042d5ab6aeb16c1 </td> </tr><tr> <td> wt15 </td> <td> ./wt15.CDF </td> <td> d58a27fad7c04ddddb0359ddc2b7ba68 </td> </tr><tr> <td> wt16 </td> <td> ./wt16.CDF </td> <td> 29654e9f8ad48c1fbe2a41b9ba578f6e </td> </tr> +</table> +<br/><sup>*</sup>The program md5sum is designed to verify data integrity. So you can check if the data were uploaded correctly or if the data were changed during the process. +</div> +<h2>Function launched:</h2> +<div><table> +<tr><th>timestamp<sup>***</sup></th><th>function</th><th>argument</th><th>value</th></tr> +<tr><td rowspan='4'>170203-11:04:42</td><td rowspan='4'>xcmsSet</td> +<td>nSlaves</td><td>1</td></tr> +<tr><td>method</td><td>centWave</td></tr> +<tr><td>ppm</td><td>25</td></tr> +<tr><td>peakwidth</td><td>2050</td></tr> +<tr><td rowspan='4'>170203-11:05:21</td><td rowspan='4'>xcmsSet</td> +<td>nSlaves</td><td>1</td></tr> +<tr><td>method</td><td>centWave</td></tr> +<tr><td>ppm</td><td>25</td></tr> +<tr><td>peakwidth</td><td>2050</td></tr> +<tr><td rowspan='4'>170203-11:06:21</td><td rowspan='4'>xcmsSet</td> +<td>nSlaves</td><td>1</td></tr> +<tr><td>method</td><td>centWave</td></tr> +<tr><td>ppm</td><td>25</td></tr> +<tr><td>peakwidth</td><td>2050</td></tr> +<tr><td rowspan='4'>170203-11:06:59</td><td rowspan='4'>xcmsSet</td> +<td>nSlaves</td><td>1</td></tr> +<tr><td>method</td><td>centWave</td></tr> +<tr><td>ppm</td><td>25</td></tr> +<tr><td>peakwidth</td><td>2050</td></tr> +<tr><td rowspan='6'>170203-14:38:53</td><td rowspan='6'>group</td> +<td>method</td><td>density</td></tr> +<tr><td>sleep</td><td>0.001</td></tr> +<tr><td>minfrac</td><td>0.3</td></tr> +<tr><td>bw</td><td>5</td></tr> +<tr><td>mzwid</td><td>0.01</td></tr> +<tr><td>max</td><td>50</td></tr> +<tr><td rowspan='7'>170203-14:51:16</td><td rowspan='7'>retcor</td> +<td>method</td><td>peakgroups</td></tr> +<tr><td>smooth</td><td>loess</td></tr> +<tr><td>extra</td><td>1</td></tr> +<tr><td>missing</td><td>1</td></tr> +<tr><td>span</td><td>0.2</td></tr> +<tr><td>family</td><td>gaussian</td></tr> +<tr><td>plottype</td><td>deviation</td></tr> +<tr><td rowspan='6'>170203-15:27:58</td><td rowspan='6'>group</td> +<td>method</td><td>density</td></tr> +<tr><td>sleep</td><td>0.001</td></tr> +<tr><td>minfrac</td><td>0.3</td></tr> +<tr><td>bw</td><td>5</td></tr> +<tr><td>mzwid</td><td>0.01</td></tr> +<tr><td>max</td><td>50</td></tr> +<tr><td rowspan='5'>170203-15:44:50</td><td rowspan='5'>fillPeaks</td> +<td>method</td><td>chrom</td></tr> +<tr><td>convertRTMinute</td><td>FALSE</td></tr> +<tr><td>numDigitsMZ</td><td>4</td></tr> +<tr><td>numDigitsRT</td><td>1</td></tr> +<tr><td>intval</td><td>into</td></tr> +</table> +<br/><sup>***</sup>timestamp format: yymmdd-hh:mm:ss +</div> +<h2>Informations about the xcmsSet object:</h2> +<div><pre> +An "xcmsSet" object with 4 samples + +Time range: 2506-4484 seconds (41.8-74.7 minutes) +Mass range: 200.1-600 m/z +Peaks: 32720 (about 8180 per sample) +Peak Groups: 8157 +Sample classes: KO, WT + +Peak picking was performed on MS1. +Profile settings: method = bin + step = 0.1 + +Memory usage: 4.25 MB +</pre></div> +<h2>Citations:</h2> +<div><ul> +<li>To cite the <b>XCMS</b> package in publications use: +<ul> +<li>Smith, C.A. and Want, E.J. and O'Maille, G. and Abagyan,R. and Siuzdak, G.XCMS: Processing mass spectrometry data for metabolite profiling using nonlinear peak alignment, matching and identification, Analytical Chemistry, 78:779-787 (2006)</li> +<li>Ralf Tautenhahn, Christoph Boettcher, Steffen Neumann: Highly sensitive feature detection for high resolution LC/MS BMC Bioinformatics, 9:504 (2008)</li> +<li>H. Paul Benton, Elizabeth J. Want and Timothy M. D. Ebbels Correction of mass calibration gaps in liquid chromatography-mass spectrometry metabolomics data Bioinformatics, 26:2488 (2010)</li> +</ul> +</li> +<li>To cite the <b>CAMERA</b> package in publications use: +<ul> +<li>Kuhl, C., Tautenhahn, R., Boettcher, C., Larson, T. R. and Neumann,S. CAMERA: an integrated strategy for compound spectra extraction and annotation of liquid chromatography/mass spectrometry data sets. Analytical Chemistry, 84:283-289 (2012)</li> +</ul> +</li> +<li>To cite the <b>Workflow4Metabolimics (W4M)</b> project in publications use: +<ul> +<li>Franck Giacomoni, Gildas Le Corguillé, Misharl Monsoor, Marion Landi, Pierre Pericard, Mélanie Pétéra, Christophe Duperier, Marie Tremblay-Franco, Jean-François Martin, Daniel Jacob, Sophie Goulitquer, Etienne A. Thévenot and Christophe Caron (2014). Workflow4Metabolomics: A collaborative research infrastructure for computational metabolomics. Bioinformatics doi:10.1093/bioinformatics/btu813</li> +</ul> +</li> +</ul></div> +</BODY> +</HTML>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/faahKO.xset.group.retcor.group.fillpeaks.summary.html Fri Apr 07 07:37:23 2017 -0400 @@ -0,0 +1,95 @@ +<!DOCTYPE html> +<HTML lang='en'> +<HEAD> +<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' /> +<title>[W4M] XCMS analysis summary</title> +<style> +table, tr, td, th { border: 1px solid #000000; border-collapse:collapse; } +td,th { padding: 5px; padding-right: 12px; } +th { background: #898989; text-align:left;color: white;} +h2 { color: #FFA212; } +ul li { margin-bottom:10px; } +</style> +</HEAD> +<BODY> +<div><h1>___ XCMS analysis summary using Workflow4Metabolomics ___</h1> +</div> +<h2>Samples used:</h2> +<div><table> +<tr><th>sample</th><th>filename</th><th>md5sum<sup>*</sup></th></tr> +<tr> <td> ko15 </td> <td> faahKO_reduce/KO/ko15.CDF </td> <td> 4698c36c0b3af007faf70975c04ccf2a </td> </tr><tr> <td> ko16 </td> <td> faahKO_reduce/KO/ko16.CDF </td> <td> afaeed94ced3140bc042d5ab6aeb16c1 </td> </tr><tr> <td> wt15 </td> <td> faahKO_reduce/WT/wt15.CDF </td> <td> d58a27fad7c04ddddb0359ddc2b7ba68 </td> </tr><tr> <td> wt16 </td> <td> faahKO_reduce/WT/wt16.CDF </td> <td> 29654e9f8ad48c1fbe2a41b9ba578f6e </td> </tr> +</table> +<br/><sup>*</sup>The program md5sum is designed to verify data integrity. So you can check if the data were uploaded correctly or if the data were changed during the process. +</div> +<h2>Function launched:</h2> +<div><table> +<tr><th>timestamp<sup>***</sup></th><th>function</th><th>argument</th><th>value</th></tr> +<tr><td rowspan='4'>160420-14:09:46</td><td rowspan='4'>xcmsSet</td> +<td>nSlaves</td><td>1</td></tr> +<tr><td>method</td><td>centWave</td></tr> +<tr><td>ppm</td><td>25</td></tr> +<tr><td>peakwidth</td><td>2050</td></tr> +<tr><td rowspan='6'>160420-15:07:14</td><td rowspan='6'>group</td> +<td>method</td><td>density</td></tr> +<tr><td>sleep</td><td>0.001</td></tr> +<tr><td>minfrac</td><td>0.3</td></tr> +<tr><td>bw</td><td>5</td></tr> +<tr><td>mzwid</td><td>0.01</td></tr> +<tr><td>max</td><td>50</td></tr> +<tr><td rowspan='7'>160421-11:10:32</td><td rowspan='7'>retcor</td> +<td>method</td><td>peakgroups</td></tr> +<tr><td>smooth</td><td>loess</td></tr> +<tr><td>extra</td><td>1</td></tr> +<tr><td>missing</td><td>1</td></tr> +<tr><td>span</td><td>0.2</td></tr> +<tr><td>family</td><td>gaussian</td></tr> +<tr><td>plottype</td><td>deviation</td></tr> +<tr><td rowspan='6'>160421-11:19:31</td><td rowspan='6'>group</td> +<td>method</td><td>density</td></tr> +<tr><td>sleep</td><td>0.001</td></tr> +<tr><td>minfrac</td><td>0.3</td></tr> +<tr><td>bw</td><td>5</td></tr> +<tr><td>mzwid</td><td>0.01</td></tr> +<tr><td>max</td><td>50</td></tr> +<tr><td rowspan='1'>160421-11:50:48</td><td rowspan='1'>fillPeaks</td> +<td>method</td><td>chrom</td></tr> +</table> +<br/><sup>***</sup>timestamp format: yymmdd-hh:mm:ss +</div> +<h2>Informations about the xcmsSet object:</h2> +<div><pre> +An "xcmsSet" object with 4 samples + +Time range: 2506-4484 seconds (41.8-74.7 minutes) +Mass range: 200.1-600 m/z +Peaks: 32720 (about 8180 per sample) +Peak Groups: 8157 +Sample classes: KO, WT + +Profile settings: method = bin + step = 0.1 + +Memory usage: 4.25 MB +</pre></div> +<h2>Citations:</h2> +<div><ul> +<li>To cite the <b>XCMS</b> package in publications use: +<ul> +<li>Smith, C.A. and Want, E.J. and O'Maille, G. and Abagyan,R. and Siuzdak, G.XCMS: Processing mass spectrometry data for metabolite profiling using nonlinear peak alignment, matching and identification, Analytical Chemistry, 78:779-787 (2006)</li> +<li>Ralf Tautenhahn, Christoph Boettcher, Steffen Neumann: Highly sensitive feature detection for high resolution LC/MS BMC Bioinformatics, 9:504 (2008)</li> +<li>H. Paul Benton, Elizabeth J. Want and Timothy M. D. Ebbels Correction of mass calibration gaps in liquid chromatography-mass spectrometry metabolomics data Bioinformatics, 26:2488 (2010)</li> +</ul> +</li> +<li>To cite the <b>CAMERA</b> package in publications use: +<ul> +<li>Kuhl, C., Tautenhahn, R., Boettcher, C., Larson, T. R. and Neumann,S. CAMERA: an integrated strategy for compound spectra extraction and annotation of liquid chromatography/mass spectrometry data sets. Analytical Chemistry, 84:283-289 (2012)</li> +</ul> +</li> +<li>To cite the <b>Workflow4Metabolimics (W4M)</b> project in publications use: +<ul> +<li>Franck Giacomoni, Gildas Le Corguillé, Misharl Monsoor, Marion Landi, Pierre Pericard, Mélanie Pétéra, Christophe Duperier, Marie Tremblay-Franco, Jean-François Martin, Daniel Jacob, Sophie Goulitquer, Etienne A. Thévenot and Christophe Caron (2014). Workflow4Metabolomics: A collaborative research infrastructure for computational metabolomics. Bioinformatics doi:10.1093/bioinformatics/btu813</li> +</ul> +</li> +</ul></div> +</BODY> +</HTML>
--- a/test-data/summary.html Mon Jan 30 08:54:06 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,95 +0,0 @@ -<!DOCTYPE html> -<HTML lang='en'> -<HEAD> -<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' /> -<title>[W4M] XCMS analysis summary</title> -<style> -table, tr, td, th { border: 1px solid #000000; border-collapse:collapse; } -td,th { padding: 5px; padding-right: 12px; } -th { background: #898989; text-align:left;color: white;} -h2 { color: #FFA212; } -ul li { margin-bottom:10px; } -</style> -</HEAD> -<BODY> -<div><h1>___ XCMS analysis summary using Workflow4Metabolomics ___</h1> -</div> -<h2>Samples used:</h2> -<div><table> -<tr><th>sample</th><th>filename</th><th>md5sum<sup>*</sup></th></tr> -<tr> <td> ko15 </td> <td> faahKO_reduce/KO/ko15.CDF </td> <td> 4698c36c0b3af007faf70975c04ccf2a </td> </tr><tr> <td> ko16 </td> <td> faahKO_reduce/KO/ko16.CDF </td> <td> afaeed94ced3140bc042d5ab6aeb16c1 </td> </tr><tr> <td> wt15 </td> <td> faahKO_reduce/WT/wt15.CDF </td> <td> d58a27fad7c04ddddb0359ddc2b7ba68 </td> </tr><tr> <td> wt16 </td> <td> faahKO_reduce/WT/wt16.CDF </td> <td> 29654e9f8ad48c1fbe2a41b9ba578f6e </td> </tr> -</table> -<br/><sup>*</sup>The program md5sum is designed to verify data integrity. So you can check if the data were uploaded correctly or if the data were chancged during the process. -</div> -<h2>Function launched:</h2> -<div><table> -<tr><th>timestamp<sup>***</sup></th><th>function</th><th>argument</th><th>value</th></tr> -<tr><td rowspan='4'>160420-14:09:46</td><td rowspan='4'>xcmsSet</td> -<td>nSlaves</td><td>1</td></tr> -<tr><td>method</td><td>centWave</td></tr> -<tr><td>ppm</td><td>25</td></tr> -<tr><td>peakwidth</td><td>2050</td></tr> -<tr><td rowspan='6'>160420-15:07:14</td><td rowspan='6'>group</td> -<td>method</td><td>density</td></tr> -<tr><td>sleep</td><td>0.001</td></tr> -<tr><td>minfrac</td><td>0.3</td></tr> -<tr><td>bw</td><td>5</td></tr> -<tr><td>mzwid</td><td>0.01</td></tr> -<tr><td>max</td><td>50</td></tr> -<tr><td rowspan='7'>160421-11:10:32</td><td rowspan='7'>retcor</td> -<td>method</td><td>peakgroups</td></tr> -<tr><td>smooth</td><td>loess</td></tr> -<tr><td>extra</td><td>1</td></tr> -<tr><td>missing</td><td>1</td></tr> -<tr><td>span</td><td>0.2</td></tr> -<tr><td>family</td><td>gaussian</td></tr> -<tr><td>plottype</td><td>deviation</td></tr> -<tr><td rowspan='6'>160421-11:19:31</td><td rowspan='6'>group</td> -<td>method</td><td>density</td></tr> -<tr><td>sleep</td><td>0.001</td></tr> -<tr><td>minfrac</td><td>0.3</td></tr> -<tr><td>bw</td><td>5</td></tr> -<tr><td>mzwid</td><td>0.01</td></tr> -<tr><td>max</td><td>50</td></tr> -<tr><td rowspan='1'>160421-11:50:48</td><td rowspan='1'>fillPeaks</td> -<td>method</td><td>chrom</td></tr> -</table> -<br/><sup>***</sup>timestamp format: yymmdd-hh:mm:ss -</div> -<h2>Informations about the xcmsSet object:</h2> -<div><pre> -An "xcmsSet" object with 4 samples - -Time range: 2506-4484 seconds (41.8-74.7 minutes) -Mass range: 200.1-600 m/z -Peaks: 32720 (about 8180 per sample) -Peak Groups: 8157 -Sample classes: KO, WT - -Profile settings: method = bin - step = 0.1 - -Memory usage: 4.25 MB -</pre></div> -<h2>Citations:</h2> -<div><ul> -<li>To cite the <b>XCMS</b> package in publications use: -<ul> -<li>Smith, C.A. and Want, E.J. and O'Maille, G. and Abagyan,R. and Siuzdak, G.XCMS: Processing mass spectrometry data for metabolite profiling using nonlinear peak alignment, matching and identification, Analytical Chemistry, 78:779-787 (2006)</li> -<li>Ralf Tautenhahn, Christoph Boettcher, Steffen Neumann: Highly sensitive feature detection for high resolution LC/MS BMC Bioinformatics, 9:504 (2008)</li> -<li>H. Paul Benton, Elizabeth J. Want and Timothy M. D. Ebbels Correction of mass calibration gaps in liquid chromatography-mass spectrometry metabolomics data Bioinformatics, 26:2488 (2010)</li> -</ul> -</li> -<li>To cite the <b>CAMERA</b> package in publications use: -<ul> -<li>Kuhl, C., Tautenhahn, R., Boettcher, C., Larson, T. R. and Neumann,S. CAMERA: an integrated strategy for compound spectra extraction and annotation of liquid chromatography/mass spectrometry data sets. Analytical Chemistry, 84:283-289 (2012)</li> -</ul> -</li> -<li>To cite the <b>Workflow4Metabolimics (W4M)</b> project in publications use: -<ul> -<li>Franck Giacomoni, Gildas Le Corguillé, Misharl Monsoor, Marion Landi, Pierre Pericard, Mélanie Pétéra, Christophe Duperier, Marie Tremblay-Franco, Jean-François Martin, Daniel Jacob, Sophie Goulitquer, Etienne A. Thévenot and Christophe Caron (2014). Workflow4Metabolomics: A collaborative research infrastructure for computational metabolomics. Bioinformatics doi:10.1093/bioinformatics/btu813</li> -</ul> -</li> -</ul></div> -</BODY> -</HTML>
--- a/tool_dependencies.xml Mon Jan 30 08:54:06 2017 -0500 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,9 +0,0 @@ -<?xml version="1.0"?> -<tool_dependency> - <package name="R" version="3.1.2"> - <repository changeset_revision="4d2fd1413b56" name="package_r_3_1_2" owner="iuc" toolshed="https://toolshed.g2.bx.psu.edu" /> - </package> - <package name="bioconductor-camera" version="1.22.0"> - <repository changeset_revision="845eb883bd1b" name="package_r_camera_1_22_0" owner="lecorguille" toolshed="https://toolshed.g2.bx.psu.edu" /> - </package> -</tool_dependency>
--- a/xcms_summary.r Mon Jan 30 08:54:06 2017 -0500 +++ b/xcms_summary.r Fri Apr 07 07:37:23 2017 -0400 @@ -6,7 +6,7 @@ # ----- ARGUMENTS BLACKLIST ----- #xcms.r -argBlacklist=c("zipfile","xfunction","xsetRdataOutput","sampleMetadataOutput","ticspdf","bicspdf","rplotspdf") +argBlacklist=c("zipfile","singlefile_galaxyPath","singlefile_sampleName","xfunction","xsetRdataOutput","sampleMetadataOutput","ticspdf","bicspdf","rplotspdf") #CAMERA.r argBlacklist=c(argBlacklist,"dataMatrixOutput","variableMetadataOutput","new_file_path") @@ -57,7 +57,7 @@ writehtml("<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />") writehtml("<title>[W4M] XCMS analysis summary</title>") - + writehtml("<style>") writehtml("table, tr, td, th { border: 1px solid #000000; border-collapse:collapse; }") writehtml("td,th { padding: 5px; padding-right: 12px; }") @@ -84,8 +84,8 @@ } else { sampleNameHeaderHtml = paste("<th>sample</th><th>sample renamed</th>") sampleNameHtml = paste("<td>",sampnames(xset),"</td><td>",sampleNamesList$sampleNamesMakeNames,"</td>") - } - + } + if (!exists("md5sumList")) { md5sumHeaderHtml = "" md5sumHtml = "" @@ -93,16 +93,16 @@ } else if (is.null(md5sumList$removalBadCharacters)) { md5sumHeaderHtml = paste("<th>md5sum<sup>*</sup></th>") md5sumHtml = paste("<td>",md5sumList$origin,"</td>") - md5sumLegend = "<br/><sup>*</sup>The program md5sum is designed to verify data integrity. So you can check if the data were uploaded correctly or if the data were chancged during the process." + md5sumLegend = "<br/><sup>*</sup>The program md5sum is designed to verify data integrity. So you can check if the data were uploaded correctly or if the data were changed during the process." } else { md5sumHeaderHtml = paste("<th>md5sum<sup>*</sup></th><th>md5sum<sup>**</sup> after bad characters removal</th>") md5sumHtml = paste("<td>",md5sumList$origin,"</td><td>",md5sumList$removalBadCharacters,"</td>") - md5sumLegend = "<br/><sup>*</sup>The program md5sum is designed to verify data integrity. So you can check if the data were uploaded correctly or if the data were chancged during the process.<br/><sup>**</sup>Because some bad characters (eg: accent) were removed from your original file, the checksum have changed too.<br/>" + md5sumLegend = "<br/><sup>*</sup>The program md5sum is designed to verify data integrity. So you can check if the data were uploaded correctly or if the data were changed during the process.<br/><sup>**</sup>Because some bad characters (eg: accent) were removed from your original file, the checksum have changed too.<br/>" } writehtml("<tr>",sampleNameHeaderHtml,"<th>filename</th>",md5sumHeaderHtml,"</tr>") writehtml(paste("<tr>",sampleNameHtml,"<td>",xset@filepaths,"</td>",md5sumHtml,"</tr>")) - + writehtml("</table>") writehtml(md5sumLegend) writehtml("</div>") @@ -170,4 +170,3 @@ writehtml("</BODY>") writehtml("</HTML>") -