Mercurial > repos > recetox > matchms_networking
comparison matchms_networking_wrapper.py @ 0:aa77b38aede8 draft
planemo upload for repository https://github.com/RECETOX/galaxytools/tree/master/tools/matchms commit f7bab98744e338dcdbdc9cf6f9de287632c76ea2
| author | recetox |
|---|---|
| date | Tue, 18 Oct 2022 13:21:09 +0000 |
| parents | |
| children | ce2f8af32ea7 |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:aa77b38aede8 |
|---|---|
| 1 import argparse | |
| 2 import sys | |
| 3 | |
| 4 from matchms.importing import scores_from_json | |
| 5 from matchms.networking import SimilarityNetwork | |
| 6 | |
| 7 | |
| 8 def main(argv): | |
| 9 parser = argparse.ArgumentParser(description="Create network-graph from similarity scores.") | |
| 10 parser.add_argument("--graph_format", type=str, help="Format of the output similarity network.") | |
| 11 parser.add_argument("--identifier", type=str, help="Unique metadata identifier of each spectrum from which scores are computed.") | |
| 12 parser.add_argument("--top_n", type=int, help="Number of highest-score edges to keep.") | |
| 13 parser.add_argument("--max_links", type=int, help="Maximum number of links to add per node.") | |
| 14 parser.add_argument("--score_cutoff", type=float, help="Minimum similarity score value to link two spectra.") | |
| 15 parser.add_argument("--link_method", type=str, help="Method for selecting top N edges for each node.") | |
| 16 parser.add_argument("--keep_unconnected_nodes", help="Keep unconnected nodes in the network.", action="store_true") | |
| 17 parser.add_argument("scores", type=str, help="Path to matchMS similarity-scores .json file.") | |
| 18 parser.add_argument("output_filename", type=str, help="Path where to store the output similarity network.") | |
| 19 args = parser.parse_args() | |
| 20 | |
| 21 scores = scores_from_json(args.scores) | |
| 22 | |
| 23 network = SimilarityNetwork(identifier_key=args.identifier, | |
| 24 top_n=args.top_n, | |
| 25 max_links=args.max_links, | |
| 26 score_cutoff=args.score_cutoff, | |
| 27 link_method=args.link_method, | |
| 28 keep_unconnected_nodes=args.keep_unconnected_nodes) | |
| 29 | |
| 30 network.create_network(scores) | |
| 31 network.export_to_file(filename=args.output_filename, graph_format=args.graph_format) | |
| 32 | |
| 33 return 0 | |
| 34 | |
| 35 | |
| 36 if __name__ == "__main__": | |
| 37 main(argv=sys.argv[1:]) | |
| 38 pass |
