Mercurial > repos > recetox > aplcms_to_ramclustr_converter
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 |
| 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() |
