annotate sRbowtieParser.py @ 2:aa7092c7a3c8 draft

Uploaded
author drosofff
date Mon, 23 Jun 2014 03:57:00 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
1 #!/usr/bin/python
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
2 # python parser module to analyse sRbowtie alignments
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
3 # version 0.9
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
4 # Usage sRbowtieParser.py <1:index source> <2:extraction directive> <3:outputL> <4:polarity> <5:6:7 filePath:FileExt:FileLabel> <.. ad lib>
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
5
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
6 import sys
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
7 from smRtools import *
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
8
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
9 IndexSource = sys.argv[1]
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
10 ExtractionDirective = sys.argv[2]
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
11 if ExtractionDirective == "--do_not_extract_index":
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
12 genomeRefFormat = "fastaSource"
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
13 elif ExtractionDirective == "--extract_index":
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
14 genomeRefFormat = "bowtieIndex"
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
15 Output = sys.argv[3]
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
16 Polarity = sys.argv[4] # maybe "both", "forward", "reverse"
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
17 Triplets = [sys.argv[5:][i:i+3] for i in xrange(0, len(sys.argv[5:]), 3)]
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
18 MasterListOfGenomes = {}
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
19
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
20 for [filePath, FileExt, FileLabel] in Triplets:
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
21 MasterListOfGenomes[FileLabel] = HandleSmRNAwindows (filePath, FileExt, IndexSource, genomeRefFormat)
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
22
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
23 header = ["gene"]
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
24 for [filePath, FileExt, FileLabel] in Triplets:
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
25 header.append(FileLabel)
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
26
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
27 F = open (sys.argv[3], "w")
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
28 print >> F, "\t".join(header)
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
29 for item in sorted (MasterListOfGenomes[header[1]].instanceDict.keys() ):
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
30 line=[item]
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
31 for sample in header[1:]:
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
32 count = str (MasterListOfGenomes[sample].instanceDict[item].readcount(polarity=Polarity))
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
33 line.append(count)
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
34 print >> F, "\t".join(line )
aa7092c7a3c8 Uploaded
drosofff
parents:
diff changeset
35 F.close()