Mercurial > repos > computational-metabolomics > metfrag
annotate metfrag.py @ 2:f151ee133612 draft default tip
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
author | computational-metabolomics |
---|---|
date | Tue, 14 Jul 2020 07:41:53 -0400 |
parents | 9ee2e2ceb2c9 |
children |
rev | line source |
---|---|
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
1 from __future__ import absolute_import, print_function |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
2 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
3 try: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
4 from configparser import ConfigParser |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
5 except ImportError as e: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
6 print(e) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
7 from ConfigParser import ConfigParser |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
8 |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
9 import argparse |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
10 import csv |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
11 import glob |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
12 import multiprocessing |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
13 import os |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
14 import re |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
15 import shutil |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
16 import sys |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
17 import tempfile |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
18 from collections import defaultdict |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
19 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
20 import six |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
21 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
22 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
23 # function to extract the meta data using the regular expressions |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
24 def parse_meta(meta_regex, meta_info=None): |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
25 if meta_info is None: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
26 meta_info = {} |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
27 for k, regexes in six.iteritems(meta_regex): |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
28 for reg in regexes: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
29 m = re.search(reg, line, re.IGNORECASE) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
30 if m: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
31 meta_info[k] = '-'.join(m.groups()).strip() |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
32 return meta_info |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
33 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
34 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
35 def get_meta_regex(schema): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
36 ###################################################################### |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
37 # Setup regular expressions for MSP parsing dictionary |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
38 ###################################################################### |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
39 regex_msp = {} |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
40 regex_msp['name'] = [r'^Name(?:=|:)(.*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
41 regex_msp['polarity'] = [r'^ion.*mode(?:=|:)(.*)$', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
42 r'^ionization.*mode(?:=|:)(.*)$', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
43 r'^polarity(?:=|:)(.*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
44 regex_msp['precursor_mz'] = [r'^precursor.*m/z(?:=|:)\s*(\d*[.,]?\d*)$', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
45 r'^precursor.*mz(?:=|:)\s*(\d*[.,]?\d*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
46 regex_msp['precursor_type'] = [r'^precursor.*type(?:=|:)(.*)$', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
47 r'^adduct(?:=|:)(.*)$', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
48 r'^ADDUCTIONNAME(?:=|:)(.*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
49 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
50 regex_msp['retention_time'] = [r'^RETENTION.*TIME(?:=|:)\s*(.*)$', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
51 r'^rt(?:=|:)\s*(.*)$', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
52 r'^time(?:=|:)\s*(.*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
53 # From example winter_pos.mspy from kristian |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
54 regex_msp['AlignmentID'] = [r'^AlignmentID(?:=|:)\s*(.*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
55 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
56 regex_msp['num_peaks'] = [r'^Num.*Peaks(?:=|:)\s*(\d*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
57 regex_msp['msp'] = [r'^Name(?:=|:)(.*)$'] # Flag for standard MSP format |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
58 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
59 regex_massbank = {} |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
60 regex_massbank['name'] = [r'^RECORD_TITLE:(.*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
61 regex_massbank['polarity'] = [ |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
62 r'^AC\$MASS_SPECTROMETRY:\s+ION_MODE\s+(.*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
63 regex_massbank['precursor_mz'] = [ |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
64 r'^MS\$FOCUSED_ION:\s+PRECURSOR_M/Z\s+(\d*[.,]?\d*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
65 regex_massbank['precursor_type'] = [ |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
66 r'^MS\$FOCUSED_ION:\s+PRECURSOR_TYPE\s+(.*)$'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
67 regex_massbank['retention_time'] = [ |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
68 r'^AC\$CHROMATOGRAPHY:\s+RETENTION_TIME\s*(\d*\.?\d+).*'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
69 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
70 regex_massbank['num_peaks'] = [r'^PK\$NUM_PEAK:\s+(\d*)'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
71 regex_massbank['cols'] = [r'^PK\$PEAK:\s+(.*)'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
72 regex_massbank['massbank'] = [ |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
73 r'^RECORD_TITLE:(.*)$'] # Flag for massbank format |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
74 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
75 if schema == 'msp': |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
76 meta_regex = regex_msp |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
77 elif schema == 'massbank': |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
78 meta_regex = regex_massbank |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
79 elif schema == 'auto': |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
80 # If auto we just check for all the available paramter names and then |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
81 # determine if Massbank or MSP based on the name parameter |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
82 meta_regex = {} |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
83 meta_regex.update(regex_massbank) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
84 meta_regex['name'].extend(regex_msp['name']) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
85 meta_regex['polarity'].extend(regex_msp['polarity']) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
86 meta_regex['precursor_mz'].extend(regex_msp['precursor_mz']) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
87 meta_regex['precursor_type'].extend(regex_msp['precursor_type']) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
88 meta_regex['num_peaks'].extend(regex_msp['num_peaks']) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
89 meta_regex['retention_time'].extend(regex_msp['retention_time']) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
90 meta_regex['AlignmentID'] = regex_msp['AlignmentID'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
91 meta_regex['msp'] = regex_msp['msp'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
92 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
93 else: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
94 sys.exit("No schema selected") |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
95 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
96 return meta_regex |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
97 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
98 |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
99 ###################################################################### |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
100 # Setup parameter dictionary |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
101 ###################################################################### |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
102 def init_paramd(args): |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
103 paramd = defaultdict() |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
104 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
105 paramd["MetFragDatabaseType"] = args.MetFragDatabaseType |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
106 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
107 if args.MetFragDatabaseType == "LocalCSV": |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
108 paramd["LocalDatabasePath"] = args.LocalDatabasePath |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
109 elif args.MetFragDatabaseType == "MetChem": |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
110 paramd["LocalMetChemDatabase"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
111 config.get('MetChem', 'LocalMetChemDatabase') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
112 paramd["LocalMetChemDatabasePortNumber"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
113 config.get('MetChem', 'LocalMetChemDatabasePortNumber') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
114 paramd["LocalMetChemDatabaseServerIp"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
115 args.LocalMetChemDatabaseServerIp |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
116 paramd["LocalMetChemDatabaseUser"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
117 config.get('MetChem', 'LocalMetChemDatabaseUser') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
118 paramd["LocalMetChemDatabasePassword"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
119 config.get('MetChem', 'LocalMetChemDatabasePassword') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
120 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
121 paramd["FragmentPeakMatchAbsoluteMassDeviation"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
122 args.FragmentPeakMatchAbsoluteMassDeviation |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
123 paramd["FragmentPeakMatchRelativeMassDeviation"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
124 args.FragmentPeakMatchRelativeMassDeviation |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
125 paramd["DatabaseSearchRelativeMassDeviation"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
126 args.DatabaseSearchRelativeMassDeviation |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
127 paramd["SampleName"] = '' |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
128 paramd["ResultsPath"] = os.path.join(wd) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
129 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
130 if args.polarity == "pos": |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
131 paramd["IsPositiveIonMode"] = True |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
132 paramd["PrecursorIonModeDefault"] = "1" |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
133 paramd["PrecursorIonMode"] = "1" |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
134 paramd["nm_mass_diff_default"] = 1.007276 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
135 else: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
136 paramd["IsPositiveIonMode"] = False |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
137 paramd["PrecursorIonModeDefault"] = "-1" |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
138 paramd["PrecursorIonMode"] = "-1" |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
139 paramd["nm_mass_diff_default"] = -1.007276 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
140 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
141 paramd["MetFragCandidateWriter"] = "CSV" |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
142 paramd["NumberThreads"] = args.NumberThreads |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
143 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
144 if args.ScoreSuspectLists: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
145 paramd["ScoreSuspectLists"] = args.ScoreSuspectLists |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
146 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
147 paramd["MetFragScoreTypes"] = args.MetFragScoreTypes |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
148 paramd["MetFragScoreWeights"] = args.MetFragScoreWeights |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
149 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
150 dct_filter = defaultdict() |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
151 filterh = [] |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
152 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
153 if args.UnconnectedCompoundFilter: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
154 filterh.append('UnconnectedCompoundFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
155 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
156 if args.IsotopeFilter: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
157 filterh.append('IsotopeFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
158 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
159 if args.FilterMinimumElements: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
160 filterh.append('MinimumElementsFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
161 dct_filter['FilterMinimumElements'] = args.FilterMinimumElements |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
162 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
163 if args.FilterMaximumElements: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
164 filterh.append('MaximumElementsFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
165 dct_filter['FilterMaximumElements'] = args.FilterMaximumElements |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
166 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
167 if args.FilterSmartsInclusionList: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
168 filterh.append('SmartsSubstructureInclusionFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
169 dct_filter[ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
170 'FilterSmartsInclusionList'] = args.FilterSmartsInclusionList |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
171 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
172 if args.FilterSmartsExclusionList: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
173 filterh.append('SmartsSubstructureExclusionFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
174 dct_filter[ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
175 'FilterSmartsExclusionList'] = args.FilterSmartsExclusionList |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
176 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
177 # My understanding is that both 'ElementInclusionExclusiveFilter' |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
178 # and 'ElementExclusionFilter' use 'FilterIncludedElements' |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
179 if args.FilterIncludedExclusiveElements: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
180 filterh.append('ElementInclusionExclusiveFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
181 dct_filter[ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
182 'FilterIncludedElements'] = args.FilterIncludedExclusiveElements |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
183 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
184 if args.FilterIncludedElements: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
185 filterh.append('ElementInclusionFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
186 dct_filter['FilterIncludedElements'] = args.FilterIncludedElements |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
187 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
188 if args.FilterExcludedElements: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
189 filterh.append('ElementExclusionFilter') |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
190 dct_filter['FilterExcludedElements'] = args.FilterExcludedElements |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
191 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
192 if filterh: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
193 fcmds = ','.join(filterh) + ' ' |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
194 for k, v in six.iteritems(dct_filter): |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
195 fcmds += "{0}={1} ".format(str(k), str(v)) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
196 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
197 paramd["MetFragPreProcessingCandidateFilter"] = fcmds |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
198 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
199 return paramd |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
200 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
201 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
202 ###################################################################### |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
203 # Function to run metfrag when all metainfo and peaks have been parsed |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
204 ###################################################################### |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
205 def run_metfrag(meta_info, peaklist, args, wd, spectrac, adduct_types): |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
206 # Get sample details (if possible to extract) e.g. if created as part of |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
207 # the msPurity pipeline) choose between getting additional details to add |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
208 # as columns as either all meta data from msp, just details from the |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
209 # record name (i.e. when using msPurity and we have the columns coded into |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
210 # the name) or just the spectra index (spectrac)]. |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
211 # Returns the parameters used and the command line call |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
212 meta_info = {k: v for k, v in meta_info.items() if k |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
213 not in ['msp', 'massbank', 'cols']} |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
214 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
215 paramd = init_paramd(args) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
216 if args.meta_select_col == 'name': |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
217 # have additional column of just the name |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
218 paramd['additional_details'] = {'name': meta_info['name']} |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
219 elif args.meta_select_col == 'name_split': |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
220 # have additional columns split by "|" and |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
221 # then on ":" e.g. MZ:100.2 | RT:20 | xcms_grp_id:1 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
222 paramd['additional_details'] = { |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
223 sm.split(":")[0].strip(): sm.split(":")[1].strip() for sm in |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
224 meta_info['name'].split("|")} |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
225 elif args.meta_select_col == 'all': |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
226 # have additional columns based on all the meta information |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
227 # extracted from the MSP |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
228 paramd['additional_details'] = meta_info |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
229 else: |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
230 # Just have an index of the spectra in the MSP file |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
231 paramd['additional_details'] = {'spectra_idx': spectrac} |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
232 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
233 paramd["SampleName"] = "{}_metfrag_result".format(spectrac) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
234 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
235 # =============== Output peaks to txt file ============================== |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
236 paramd["PeakListPath"] = os.path.join(wd, |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
237 "{}_tmpspec.txt".format(spectrac)) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
238 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
239 # write spec file |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
240 |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
241 with open(paramd["PeakListPath"], 'w') as outfile: |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
242 pls = '' |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
243 for p in peaklist: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
244 outfile.write(p[0] + "\t" + p[1] + "\n") |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
245 pls = pls + '{}_{};'.format(p[0], p[1]) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
246 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
247 if args.output_cl: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
248 peaklist_str = pls[:-1] |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
249 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
250 # =============== Update param based on MSP metadata ====================== |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
251 # Replace param details with details from MSP if required |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
252 if 'precursor_type' in meta_info and \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
253 meta_info['precursor_type'] in adduct_types: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
254 adduct = meta_info['precursor_type'] |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
255 nm = float(meta_info['precursor_mz']) - adduct_types[ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
256 meta_info['precursor_type']] |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
257 paramd["PrecursorIonMode"] = \ |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
258 int(round(adduct_types[meta_info['precursor_type']], 0)) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
259 elif not args.skip_invalid_adducts: |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
260 inv_adduct_types = {int(round(v, 0)): k for k, v in |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
261 six.iteritems(adduct_types)} |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
262 adduct = inv_adduct_types[int(paramd['PrecursorIonModeDefault'])] |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
263 paramd["PrecursorIonMode"] = paramd['PrecursorIonModeDefault'] |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
264 nm = float(meta_info['precursor_mz']) - paramd['nm_mass_diff_default'] |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
265 else: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
266 print('Skipping {}'.format(paramd["SampleName"])) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
267 return '', '' |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
268 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
269 if not ('precursor_type' in paramd['additional_details'] or 'adduct' |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
270 in paramd['additional_details']): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
271 paramd['additional_details']['adduct'] = adduct |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
272 |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
273 paramd["NeutralPrecursorMass"] = nm |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
274 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
275 # ============== Create CLI cmd for metfrag =============================== |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
276 cmd = "metfrag" |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
277 for k, v in six.iteritems(paramd): |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
278 if k not in ['PrecursorIonModeDefault', 'nm_mass_diff_default', |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
279 'additional_details']: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
280 cmd += " {}={}".format(str(k), str(v)) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
281 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
282 if args.output_cl: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
283 cli_str = '{} PeakListString={}'.format(cmd, peaklist_str) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
284 paramd['additional_details']['MetFragCLIString'] = cli_str |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
285 |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
286 # ============== Run metfrag ============================================== |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
287 # print(cmd) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
288 # Filter before process with a minimum number of MS/MS peaks |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
289 if plinesread >= float(args.minMSMSpeaks): |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
290 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
291 if int(args.cores_top_level) == 1: |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
292 os.system(cmd) |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
293 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
294 return paramd, cmd |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
295 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
296 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
297 def work(cmds): |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
298 return [os.system(cmd) for cmd in cmds] |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
299 |
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
300 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
301 if __name__ == "__main__": |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
302 print(sys.version) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
303 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
304 parser = argparse.ArgumentParser() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
305 parser.add_argument('--input_pth') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
306 parser.add_argument('--result_pth', default='metfrag_result.csv') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
307 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
308 parser.add_argument('--temp_dir') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
309 parser.add_argument('--polarity', default='pos') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
310 parser.add_argument('--minMSMSpeaks', default=1) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
311 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
312 parser.add_argument('--MetFragDatabaseType', default='PubChem') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
313 parser.add_argument('--LocalDatabasePath', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
314 parser.add_argument('--LocalMetChemDatabaseServerIp', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
315 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
316 parser.add_argument('--DatabaseSearchRelativeMassDeviation', default=5) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
317 parser.add_argument('--FragmentPeakMatchRelativeMassDeviation', default=10) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
318 parser.add_argument('--FragmentPeakMatchAbsoluteMassDeviation', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
319 default=0.001) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
320 parser.add_argument('--NumberThreads', default=1) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
321 parser.add_argument('--UnconnectedCompoundFilter', action='store_true') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
322 parser.add_argument('--IsotopeFilter', action='store_true') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
323 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
324 parser.add_argument('--FilterMinimumElements', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
325 parser.add_argument('--FilterMaximumElements', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
326 parser.add_argument('--FilterSmartsInclusionList', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
327 parser.add_argument('--FilterSmartsExclusionList', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
328 parser.add_argument('--FilterIncludedElements', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
329 parser.add_argument('--FilterExcludedElements', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
330 parser.add_argument('--FilterIncludedExclusiveElements', default='') |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
331 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
332 parser.add_argument('--score_thrshld', default=0) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
333 parser.add_argument('--pctexplpeak_thrshld', default=0) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
334 parser.add_argument('--schema') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
335 parser.add_argument('--cores_top_level', default=1) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
336 parser.add_argument('--chunks', default=1) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
337 parser.add_argument('--meta_select_col', default='name') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
338 parser.add_argument('--skip_invalid_adducts', action='store_true') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
339 parser.add_argument('--output_cl', action='store_true') |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
340 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
341 parser.add_argument('--ScoreSuspectLists', default='') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
342 parser.add_argument('--MetFragScoreTypes', |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
343 default="FragmenterScore,OfflineMetFusionScore") |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
344 parser.add_argument('--MetFragScoreWeights', default="1.0,1.0") |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
345 parser.add_argument('-a', '--adducts', action='append', nargs=1, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
346 required=False, default=[], help='Adducts used') |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
347 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
348 args = parser.parse_args() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
349 print(args) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
350 config = ConfigParser() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
351 config.read( |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
352 os.path.join(os.path.dirname(os.path.abspath(__file__)), 'config.ini')) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
353 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
354 if os.stat(args.input_pth).st_size == 0: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
355 print('Input file empty') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
356 exit() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
357 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
358 # Create temporary working directory |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
359 if args.temp_dir: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
360 wd = args.temp_dir |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
361 else: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
362 wd = tempfile.mkdtemp() |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
363 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
364 if os.path.exists(wd): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
365 shutil.rmtree(wd) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
366 os.makedirs(wd) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
367 else: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
368 os.makedirs(wd) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
369 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
370 meta_regex = get_meta_regex(args.schema) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
371 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
372 adduct_types = { |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
373 '[M+H]+': 1.007276, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
374 '[M+NH4]+': 18.034374, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
375 '[M+Na]+': 22.989218, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
376 '[M+K]+': 38.963158, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
377 '[M+CH3OH+H]+': 33.033489, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
378 '[M+ACN+H]+': 42.033823, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
379 '[M+ACN+Na]+': 64.015765, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
380 '[M+2ACN+H]+': 83.06037, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
381 '[M-H]-': -1.007276, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
382 '[M+Cl]-': 34.969402, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
383 '[M+HCOO]-': 44.99819, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
384 '[M-H+HCOOH]-': 44.99819, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
385 # same as above but different style of writing adduct |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
386 '[M+CH3COO]-': 59.01385, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
387 '[M-H+CH3COOH]-': 59.01385 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
388 # same as above but different style of writing adduct |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
389 } |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
390 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
391 ###################################################################### |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
392 # Parse MSP file and run metfrag CLI |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
393 ###################################################################### |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
394 # keep list of commands if performing in CLI in parallel |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
395 cmds = [] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
396 # keep a dictionary of all params |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
397 paramds = {} |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
398 # keep count of spectra (for uid) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
399 spectrac = 0 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
400 # this dictionary will store the meta data results form the MSp file |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
401 meta_info = {} |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
402 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
403 if args.adducts: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
404 adducts_from_cli = [ |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
405 a[0].replace('__ob__', '[').replace('__cb__', ']') for a in |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
406 args.adducts |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
407 ] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
408 else: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
409 adducts_from_cli = [] |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
410 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
411 with open(args.input_pth, "r") as infile: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
412 # number of lines for the peaks |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
413 pnumlines = 0 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
414 # number of lines read for the peaks |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
415 plinesread = 0 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
416 for line in infile: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
417 line = line.strip() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
418 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
419 if pnumlines == 0: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
420 # ============== Extract metadata from MSP ==================== |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
421 meta_info = parse_meta(meta_regex, meta_info) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
422 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
423 if ('massbank' in meta_info and 'cols' in meta_info) or ( |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
424 'msp' in meta_info and 'num_peaks' in meta_info): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
425 pnumlines = int(meta_info['num_peaks']) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
426 plinesread = 0 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
427 peaklist = [] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
428 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
429 elif plinesread < pnumlines: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
430 # ============== Extract peaks from MSP ======================= |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
431 # .split() will split on any empty space (i.e. tab and space) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
432 line = tuple(line.split()) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
433 # Keep only m/z and intensity, not relative intensity |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
434 save_line = tuple(line[0].split() + line[1].split()) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
435 plinesread += 1 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
436 peaklist.append(save_line) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
437 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
438 elif plinesread and plinesread == pnumlines: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
439 # =Get sample name and additional details for output and RUN == |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
440 if adducts_from_cli: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
441 for adduct in adducts_from_cli: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
442 spectrac += 1 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
443 meta_info['precursor_type'] = adduct |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
444 paramd, cmd = run_metfrag(meta_info, peaklist, args, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
445 wd, spectrac, adduct_types) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
446 if paramd: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
447 paramds[paramd["SampleName"]] = paramd |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
448 cmds.append(cmd) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
449 else: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
450 spectrac += 1 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
451 paramd, cmd = run_metfrag(meta_info, peaklist, args, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
452 wd, spectrac, adduct_types) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
453 if paramd: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
454 paramds[paramd["SampleName"]] = paramd |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
455 cmds.append(cmd) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
456 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
457 meta_info = {} |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
458 pnumlines = 0 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
459 plinesread = 0 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
460 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
461 # end of file. Check if there is a MSP spectra to run metfrag on |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
462 if plinesread and plinesread == pnumlines: |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
463 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
464 if adducts_from_cli: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
465 for adduct in adducts_from_cli: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
466 spectrac += 1 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
467 meta_info['precursor_type'] = adduct |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
468 paramd, cmd = run_metfrag(meta_info, peaklist, args, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
469 wd, spectrac, adduct_types) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
470 if paramd: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
471 paramds[paramd["SampleName"]] = paramd |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
472 cmds.append(cmd) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
473 else: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
474 spectrac += 1 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
475 paramd, cmd = run_metfrag(meta_info, peaklist, args, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
476 wd, spectrac, adduct_types) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
477 if paramd: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
478 paramds[paramd["SampleName"]] = paramd |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
479 cmds.append(cmd) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
480 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
481 # Perform multiprocessing on command line call level |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
482 if int(args.cores_top_level) > 1: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
483 cmds_chunks = [cmds[x:x + int(args.chunks)] for x in |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
484 list(range(0, len(cmds), int(args.chunks)))] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
485 pool = multiprocessing.Pool(processes=int(args.cores_top_level)) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
486 pool.map(work, cmds_chunks) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
487 pool.close() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
488 pool.join() |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
489 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
490 ###################################################################### |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
491 # Concatenate and filter the output |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
492 ###################################################################### |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
493 # outputs might have different headers. Need to get a list of all the |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
494 # headers before we start merging the files |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
495 # outfiles = [os.path.join(wd, f) for f in glob.glob(os.path.join(wd, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
496 # "*_metfrag_result.csv"))] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
497 outfiles = glob.glob(os.path.join(wd, "*_metfrag_result.csv")) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
498 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
499 if len(outfiles) == 0: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
500 print('No results') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
501 sys.exit() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
502 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
503 headers = [] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
504 c = 0 |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
505 for fn in outfiles: |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
506 with open(fn, 'r') as infile: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
507 reader = csv.reader(infile) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
508 if sys.version_info >= (3, 0): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
509 headers.extend(next(reader)) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
510 else: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
511 headers.extend(reader.next()) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
512 # check if file has any data rows |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
513 for i, row in enumerate(reader): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
514 c += 1 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
515 if i == 1: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
516 break |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
517 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
518 # if no data rows (e.g. matches) then do not save an |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
519 # output and leave the program |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
520 if c == 0: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
521 print('No results') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
522 sys.exit() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
523 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
524 additional_detail_headers = ['sample_name'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
525 for k, paramd in six.iteritems(paramds): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
526 additional_detail_headers = list(set( |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
527 additional_detail_headers + list( |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
528 paramd['additional_details'].keys()))) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
529 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
530 # add inchikey if not already present (missing in metchem output) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
531 if 'InChIKey' not in headers: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
532 headers.append('InChIKey') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
533 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
534 additional_detail_headers = sorted(additional_detail_headers) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
535 headers = additional_detail_headers + sorted(list(set(headers))) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
536 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
537 # Sort files nicely |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
538 outfiles.sort( |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
539 key=lambda s: int( |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
540 re.match(r'^.*/(\d+)_metfrag_result.csv', s).group(1))) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
541 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
542 print(outfiles) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
543 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
544 # merge outputs |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
545 with open(args.result_pth, 'a') as merged_outfile: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
546 dwriter = csv.DictWriter(merged_outfile, fieldnames=headers, |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
547 delimiter='\t', quotechar='"') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
548 dwriter.writeheader() |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
549 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
550 for fn in outfiles: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
551 with open(fn) as infile: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
552 reader = csv.DictReader(infile, delimiter=',', quotechar='"') |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
553 for line in reader: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
554 bewrite = True |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
555 for key, value in line.items(): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
556 # Filter when no MS/MS peak matched |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
557 if key == "ExplPeaks": |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
558 if float(args.pctexplpeak_thrshld) > 0 \ |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
559 and value and "NA" in value: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
560 bewrite = False |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
561 # Filter with a score threshold |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
562 elif key == "Score": |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
563 if value and float(value) <= float( |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
564 args.score_thrshld): |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
565 bewrite = False |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
566 elif key == "NoExplPeaks": |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
567 nbfindpeak = float(value) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
568 elif key == "NumberPeaksUsed": |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
569 totpeaks = float(value) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
570 # Filter with a relative number of peak matched |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
571 try: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
572 pctexplpeak = nbfindpeak / totpeaks * 100 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
573 except ZeroDivisionError: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
574 bewrite = False |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
575 else: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
576 if pctexplpeak < float(args.pctexplpeak_thrshld): |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
577 bewrite = False |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
578 |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
579 # Write the line if it pass all filters |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
580 if bewrite: |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
581 bfn = os.path.basename(fn) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
582 bfn = bfn.replace(".csv", "") |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
583 line['sample_name'] = paramds[bfn]['SampleName'] |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
584 ad = paramds[bfn]['additional_details'] |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
585 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
586 if args.MetFragDatabaseType == "MetChem": |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
587 # for some reason the metchem database option does |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
588 # not report the full inchikey (at least in the |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
589 # Bham setup. This ensures we always get |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
590 # the fully inchikey |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
591 line['InChIKey'] = '{}-{}-{}'.format( |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
592 line['InChIKey1'], |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
593 line['InChIKey2'], |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
594 line['InChIKey3']) |
0
fd5c0b39569a
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit e20ce56f23d9fe30df64542ece2295d654ca142d"
computational-metabolomics
parents:
diff
changeset
|
595 |
2
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
596 line.update(ad) |
f151ee133612
"planemo upload for repository https://github.com/computational-metabolomics/metfrag-galaxy commit b337c6296968848e3214f4b51df3d86776f84b6a"
computational-metabolomics
parents:
1
diff
changeset
|
597 dwriter.writerow(line) |