Files
galaxy/tools/filters/mergeCols.py
T

44 lines
925 B
Python

from __future__ import print_function
import sys
def stop_err(msg):
sys.stderr.write(msg)
sys.exit()
def __main__():
try:
infile = open(sys.argv[1])
outfile = open(sys.argv[2], "w")
except Exception:
stop_err("Cannot open or create a file\n")
if len(sys.argv) < 4:
stop_err("No columns to merge")
else:
cols = sys.argv[3:]
skipped_lines = 0
for line in infile:
line = line.rstrip("\r\n")
if line and not line.startswith("#"):
fields = line.split("\t")
line += "\t"
for col in cols:
try:
line += fields[int(col) - 1]
except Exception:
skipped_lines += 1
print(line, file=outfile)
if skipped_lines > 0:
print("Skipped %d invalid lines" % skipped_lines)
if __name__ == "__main__":
__main__()