annotate aplcms_to_ramclustr_converter.py @ 4:9ea34e24474f draft

"planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
author recetox
date Mon, 09 Aug 2021 15:29:08 +0000
parents 07667688735e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
1 #!/usr/bin/env python
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
2
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
3 import argparse
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
4 import sys
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
5
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
6 import pandas as pd
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
7
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
8
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
9 parser = argparse.ArgumentParser()
4
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
10 parser.add_argument("--dataframe", help="Parquet dataframe")
3
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
11 parser.add_argument('output')
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
12 args = parser.parse_args()
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
13
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
14
4
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
15 def main():
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
16 featureTable = pd.read_parquet(args.dataframe)
3
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
17
4
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
18 # Concatenate "mz" and "rt" columns; select relevant columns; pivot the table
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
19 featureTable["mz_rt"] = featureTable["mz"].astype(str) + "_" + featureTable["rt"].astype(str)
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
20 featureTable = featureTable[["sample", "mz_rt", "sample_intensity"]]
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
21 featureTable = pd.pivot_table(featureTable, columns="mz_rt", index="sample", values="sample_intensity")
3
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
22
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
23 try:
4
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
24 featureTable.to_csv(args.output, sep=',')
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
25 msg = f"Dataset of {len(featureTable)} samples is converted to a feature-by-sample table"
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
26 print(msg, file=sys.stdout)
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
27 return 0
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
28 except Exception:
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
29 print("Could not write the data", file=sys.stdout)
9ea34e24474f "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 2dd20229f0c7f43dacc0d201ea50fef3c993d30e"
recetox
parents: 3
diff changeset
30 return 1
3
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
31
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
32
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
33 if __name__ == "__main__":
07667688735e "planemo upload for repository https://github.com/RECETOX/galaxytools/tools/aplcms_to_ramclustr_converter/ commit 521769cd5af12987a119e6302f22e2e1e864ff9a"
recetox
parents:
diff changeset
34 main()