Mercurial > repos > recetox > msp_merge
annotate msp_merge.py @ 0:d19767887ccb draft default tip
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
author | recetox |
---|---|
date | Thu, 19 May 2022 12:03:55 +0000 |
parents | |
children |
rev | line source |
---|---|
0
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
1 import argparse |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
2 from itertools import chain |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
3 from typing import List |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
4 |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
5 from matchms import Spectrum |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
6 from matchms.exporting import save_as_msp |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
7 from matchms.importing import load_from_msp |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
8 |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
9 |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
10 def read_spectra(filenames: str) -> List[Spectrum]: |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
11 """Read spectra from files. |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
12 |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
13 Args: |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
14 filenames (str): Paths to MSP files from which to load each spectrum. |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
15 |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
16 Returns: |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
17 List[Spectrum]: Spectra stored in the file. |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
18 """ |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
19 spectra = list(chain(*[load_from_msp(file) for file in filenames])) |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
20 return spectra |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
21 |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
22 |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
23 listarg = argparse.ArgumentParser() |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
24 listarg.add_argument('--filenames', nargs='+', type=str) |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
25 listarg.add_argument('--outfilename', type=str) |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
26 args = listarg.parse_args() |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
27 |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
28 if __name__ == "__main__": |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
29 spectra = read_spectra(args.filenames) |
d19767887ccb
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/msp_merge commit 51ff658aecc8738ef57af512229cd155763082d1
recetox
parents:
diff
changeset
|
30 save_as_msp(spectra, args.outfilename) |