view ipapy2_MS1_annotation.xml @ 0:7f84a8a5edde draft default tip

planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/ipapy2 commit 64b61ff2823b4f54868c0ab7a4c0dc49eaf2979a
author recetox
date Fri, 16 May 2025 08:00:41 +0000
parents
children
line wrap: on
line source

<tool id="ipapy2_MS1_annotation" name="ipaPy2 MS1 annotation" version="@TOOL_VERSION@+galaxy0" profile="@PROFILE@">
    <description>annotate clustered features using a supplied MS1 database</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    
    <expand macro="requirements"/>

    <command detect_errors="exit_code"><![CDATA[
        #set $computed_ppmthr = float($ppm) * 2
        python3  '${__tool_directory__}/ipapy2_MS1_annotation.py'
        --input_dataset_database '${mapped_isotope_patterns}' '${mapped_isotope_patterns.ext}'
        --input_dataset_adducts '${all_adducts}' '${all_adducts.ext}'
        --ppm ${ppm}
        --ratiosd ${ratiosd}
        #if $ppmunk
            --ppmunk ${ppmunk}
        #else
            --ppmunk ${ppm}
        #end if
        --ratiounk ${ratiounk}
        #if $ppmthr
            --ppmthr ${ppmthr}
        #else
            --ppmthr ${computed_ppmthr}
        #end if
        --pRTNone ${pRTNone}
        --pRTout ${pRTout}
        --output_dataset '${MS1_annotations}' '${MS1_annotations.ext}'
        --ncores \${GALAXY_SLOTS:-1}
    ]]></command>

    <inputs>
        <param label="Mapped isotope patterns" name="mapped_isotope_patterns" type="data" format="csv,tsv,tabular,parquet" help="A dataset containing the MS1 data. Ideally obtained from map_isotope_patterns" />
        <param label="all possible adducts" name="all_adducts" type="data" format="csv,tsv,tabular,parquet" help="A dataset containing the information on all the possible adducts given the database. Ideally obtained from compute_all_adducts" />
        <expand macro="ppm"/>
        <section name="unknown" title="settings for the identification of unknowns">
            <expand macro="ms_unknown"/>
        </section>
        <section name="optional_settings" title="optional settings">
            <expand macro="ms_options"/>
        </section>
    </inputs>

    <outputs>
        <data label="${tool.name} on ${on_string}" name="MS1_annotations" format_source="mapped_isotope_patterns"/>
    </outputs>

    <tests>
        <test>
            <param name="mapped_isotope_patterns" value="mapped_isotope_patterns.csv"/>
            <param name="all_adducts" value="all_adducts.csv"/>
            <param name="ppm" value="3"/>
            <output name="MS1_annotations" file="MS1_annotations.csv" lines_diff="20"/>
        </test>
    </tests>

    <help><![CDATA[

.. _ipapy2_ms1_annotation:

==========================
ipaPy2 MS1 Annotation Tool
==========================

**Tool Description**

This tool annotates clustered features in your dataset using MS1 information and a supplied adducts table. It calculates prior and posterior probabilities for each feature, leveraging mass, retention time (RT), chemical knowledge, and isotope patterns to provide high-confidence annotations.

How it works
------------

- **Prior probabilities** are calculated using only the mass information.
- **Posterior probabilities** incorporate mass, RT, prior knowledge, and isotope patterns for more accurate annotation.
- The tool matches features in your data to possible adducts and database entries, considering user-defined tolerances for mass (ppm) and other optional parameters.

Inputs
------

1. **Mapped isotope patterns**  
   Dataset containing MS1 data, ideally obtained from the ``map_isotope_patterns`` tool.

2. **All possible adducts**  
   Table listing all possible adducts for the database, ideally obtained from the ``compute_all_adducts`` tool.

3. **Parameters**  
   - **ppm**: Mass tolerance in parts per million for matching.
   - **Unknown settings**: Parameters for handling unknowns, such as ppm and ratio thresholds.
   - **Optional settings**: Additional parameters for advanced annotation control.

Outputs
-------

- **MS1_annotations**  
  Annotated dataset with additional columns describing the best-matching database entries, probabilities, and isotope pattern scores.

Example
-------

Suppose you have mapped isotope patterns and a list of all adducts. You can use this tool to annotate your features as follows:

.. code-block::

    mapped_isotope_patterns.csv
    all_adducts.csv

Set the desired tolerances (e.g., ``ppm = 3``) and run the tool. The output will be a table with annotations for each feature.

Notes
-----

- For best results, ensure your input files are correctly formatted and contain the required columns.
- The tool is designed to be flexible and can handle various input formats (CSV, TSV, Parquet, Tabular).

References
----------

- For more details on the annotation algorithm and scoring, refer to the ipaPy2 documentation or associated publications.

    ]]></help>

    <expand macro="citations"/>
</tool>