This document is for an old release of Galaxy. You can alternatively view this page in the latest release if it exists or view the top of the latest release's documentation.

Source code for galaxy.datatypes.converters.tabular_csv

#!/usr/bin/env python
Uses the python csv library to convert to and from tabular

usage: %prog [--from-tabular] -i in_file -o out_file

import argparse
import csv

[docs]def main(): usage = "Usage: %prog [options]" parser = argparse.ArgumentParser(usage=usage) parser.add_argument('-f', '--from-tabular', action='store_true', default=False, dest='fromtabular') parser.add_argument('-i', '--input', type=str, dest='input') parser.add_argument('-o', '--output', type=str, dest='output') args = parser.parse_args() input_fname = args.input output_fname = args.output if args.fromtabular: convert_to_csv(input_fname, output_fname) else: convert_to_tsv(input_fname, output_fname)
[docs]def convert_to_tsv(input_fname, output_fname): with open(input_fname, newline="") as csvfile, open(output_fname, 'w') as ofh: reader = csv.reader(csvfile) for line in reader: ofh.write('\t'.join(line) + '\n')
[docs]def convert_to_csv(input_fname, output_fname): with open(input_fname) as tabfile, open(output_fname, 'w', newline='') as ofh: writer = csv.writer(ofh, delimiter=',') for line in tabfile.readlines(): writer.writerow(line.strip().split('\t'))
if __name__ == "__main__": main()