Skip to main content

Search and Assign Molecular Formulas for Complex Mixtures of Small Molecules

Project description

Table of Contents

EnviroMS

EnviroMS is a workflow for natural organic matter data processing and annotation

Current Version

4.3.0

Data input formats

  • Generic mass list in profile and centroid mode (include all delimiters types and Excel formats)

Data output formats

  • Pandas data frame (can be saved using pickle, h5, etc)
  • Text Files (.csv, tab separated .txt, etc)
  • Microsoft Excel (xlsx)
  • Automatic JSON for workflow metadata
  • Self-containing Hierarchical Data Format (.hdf5) including raw data and ime-series data-point for processed data-sets with all associated workflow metadata (JSON)

Data structure types

  • FT-ICR MS
  • LC-FT-ICR MS

Molecular formulae search and assignment

  • Automatic local (SQLite) or external (PostgreSQL) database check, generation, and search
  • Automatic molecular formulae assignments algorithm for ESI(-) MS for natural organic matter analysis
  • Automatic fine isotopic structure calculation and search for all isotopes
  • Flexible Kendrick normalization base
  • Kendrick filter using density-based clustering
  • Kendrick classification
  • Hetero atoms classification and visualization

EnviroMS Installation

  • PyPi:
pip3 install enviroms
  • From source:
pip3 install --editable .

To be able to open thermo raw files a installation of pythonnet is needed:

  • Windows:

    pip3 install pythonnet
    
  • Mac and Linux:

    brew install mono
    pip3 install pythonnet   
    

Running the workflow

enviroMS dump-corems-enviroms-template enviroms.toml
enviroMS dump-corems-template corems.toml

Modify the enviroms.toml and corems.toml accordingly to your dataset and workflow parameters make sure to include corems.toml path inside the enviroms.toml: "corems_toml_path": "path_to_corems.toml"

enviroMS run-di configuration/enviroms.json

MiniWDL

  • Change wdl/enviroms_input.json to specify the data location

  • Change configuration/corems.toml to specify the workflow parameters

Install miniWDL:

pip3 install miniwdl

Call:

miniwdl run wdl/enviroMS.wdl -i wdl/enviroms_input.json --verbose --no-cache --copy-input-files

WARNING ** Current mode only allows for multiprocessing in a single node and it defaults to one job at a time. To use multiprocessing mode modify the parameter "runDirectInfusion.jobs_count" in the enviroMS.wdl and modify the parameter "MolecularFormulaSearch.url_database" on corems.toml to point to a Postgresql url. The default is set to use SQLite and it will fail on multiprocessing mode.

EnviroMS Docker

A docker image containing the EnviroMS command line as code entry-point

If you don't have docker installed, the easiest way is to install docker for desktop

  • Pull from Docker Registry:

    docker pull microbiome/enviroms:latest
    
  • Or to build the image from source:

    docker build -t microbiomedata/enviroms:latest .
    
  • Run Workflow from Container:

    $(data_dir) = dir_containing the FT-ICR MS data $(configuration_dir) = dir_containing the enviroms.toml, corems.toml and nmdc_metadata.json

    docker run -v $(data_dir):/enviroms/data \
               -v $(configuration):/enviroms/configuration \
                  microbiomedata/enviroms:latest enviroMS run-di /enviroms/configuration/enviroms.toml    
    
  • Save a new parameters file template:

    docker run -v $(data_dir):/enviroms/data \
               -v $(configuration):/enviroms/configuration \
                microbiomedata/enviroms:latest enviroMS dump_di_template /enviroms/configuration/enviroms.toml    
    
    docker run -v $(data_dir):/enviroms/data \
               -v $(configuration):/enviroms/configuration \
                microbiomedata/enviroms:latest enviroMS dump_corems_template /enviroms/configuration/corems.toml
    

Disclaimer

This material was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor the United States Department of Energy, nor Battelle, nor any of their employees, nor any jurisdiction or organization that has cooperated in the development of these materials, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness or any information, apparatus, product, software, or process disclosed, or represents that its use would not infringe privately owned rights.

Reference herein to any specific commercial product, process, or service by trade name, trademark, manufacturer, or otherwise does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof, or Battelle Memorial Institute. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof.

             PACIFIC NORTHWEST NATIONAL LABORATORY
                          operated by
                            BATTELLE
                            for the
               UNITED STATES DEPARTMENT OF ENERGY
                under Contract DE-AC05-76RL01830

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

EnviroMS-4.3.0.tar.gz (10.9 kB view details)

Uploaded Source

File details

Details for the file EnviroMS-4.3.0.tar.gz.

File metadata

  • Download URL: EnviroMS-4.3.0.tar.gz
  • Upload date:
  • Size: 10.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for EnviroMS-4.3.0.tar.gz
Algorithm Hash digest
SHA256 b5184291314d1a1fb6f571d6aad9362984e5a069a2c1f06c21c88106b6a005c7
MD5 28083a86b59088f489f42acea9df7639
BLAKE2b-256 451240821073ce2a316f2e6844b7bd11d90eea7967a0cde5560aa611ab7a5e1b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page