Mercurial > repos > jowong > prince_galaxy
comparison prince_postprocess.py @ 0:88748989a22a draft default tip
planemo upload
| author | jowong |
|---|---|
| date | Tue, 13 Nov 2018 11:41:37 -0500 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:88748989a22a |
|---|---|
| 1 #!/usr/bin/env python | |
| 2 | |
| 3 import sys | |
| 4 import argparse as ap | |
| 5 import re | |
| 6 parser = ap.ArgumentParser(prog='prince_postprocess', conflict_handler='resolve', | |
| 7 description="Postprocess galaxy PRINCE output") | |
| 8 | |
| 9 input = parser.add_argument_group('Input', '') | |
| 10 input.add_argument('-i', '--input', nargs=1, required=True, help="PRINCE OUTPUT") | |
| 11 input.add_argument('-s', '--sample', nargs='+', required=True, help="Sample names") | |
| 12 input.add_argument('-f', '--file', nargs='+', required=True, help="File of forward reads in galaxy convention") | |
| 13 if len(sys.argv) == 0: | |
| 14 parser.print_usage() | |
| 15 sys.exit(1) | |
| 16 | |
| 17 args = parser.parse_args() | |
| 18 | |
| 19 #print(args.input) | |
| 20 #sample_name = re.sub('(_1.fastq(.gz)*|_2.fastq(.gz)*|.fastq(.gz)*)', '', args.label.rstrip().lstrip()) | |
| 21 sample_dict={} | |
| 22 path_index = 0 | |
| 23 for path in args.file: | |
| 24 with open(path) as f: | |
| 25 for line in f: | |
| 26 sample_dict[re.sub(".*/","",line)] = sample[path_index] | |
| 27 path_index += 1 | |
| 28 | |
| 29 | |
| 30 | |
| 31 | |
| 32 | |
| 33 | |
| 34 | |
| 35 with open(args.input[0]) as prince_output: | |
| 36 with open('prince_postprocess_output.txt', 'w') as output: | |
| 37 x = 1 | |
| 38 index = 0 | |
| 39 for line in prince_output: | |
| 40 if x%2 == 0: | |
| 41 entries =line.rstrip().split(',') | |
| 42 sample = re.sub('(_1.fastq(.gz)*|_2.fastq(.gz)*|.fastq(.gz)*)', '', sample_dict[entries[0]]) | |
| 43 output.write(re.sub(entries[0], sample, line)) | |
| 44 index += 1 | |
| 45 else: | |
| 46 output.write(line) | |
| 47 x += 1 | |
| 48 #output.write("\n") | |
| 49 | |
| 50 |
