annotate mergeCols.py @ 3:ae7843d06f8f draft default tip

"planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
author devteam
date Thu, 16 Jul 2020 04:37:14 -0400
parents dd40b1e9eebe
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
1 import sys
0
28ca7552e884 Uploaded merge_cols tarball.
devteam
parents:
diff changeset
2
28ca7552e884 Uploaded merge_cols tarball.
devteam
parents:
diff changeset
3
28ca7552e884 Uploaded merge_cols tarball.
devteam
parents:
diff changeset
4 def __main__():
2
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
5 if len(sys.argv) < 4:
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
6 sys.exit('No columns to merge\n')
0
28ca7552e884 Uploaded merge_cols tarball.
devteam
parents:
diff changeset
7 else:
2
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
8 cols = sys.argv[3:]
0
28ca7552e884 Uploaded merge_cols tarball.
devteam
parents:
diff changeset
9
3
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
10 with open(sys.argv[1], 'r') as infile, open(sys.argv[2], 'w') as outfile:
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
11 skipped_lines = 0
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
12 for line in infile:
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
13 line = line.rstrip('\r\n')
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
14 if line and not line.startswith('#'):
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
15 fields = line.split('\t')
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
16 line += '\t'
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
17 for col in cols:
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
18 try:
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
19 line += fields[int(col) - 1]
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
20 except Exception:
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
21 skipped_lines += 1
0
28ca7552e884 Uploaded merge_cols tarball.
devteam
parents:
diff changeset
22
3
ae7843d06f8f "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit ed2daf7024ea79a04bbb4a0896b9402ab2daf89f"
devteam
parents: 2
diff changeset
23 outfile.write("{}\n".format(line))
2
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
24
0
28ca7552e884 Uploaded merge_cols tarball.
devteam
parents:
diff changeset
25 if skipped_lines > 0:
2
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
26 print('Skipped %d invalid lines' % skipped_lines)
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
27
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
28
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
29 if __name__ == "__main__":
dd40b1e9eebe "planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/merge_cols commit dc2e3b631f515e905d5645baa4fb49df8e8cc0d5"
devteam
parents: 0
diff changeset
30 __main__()