Mercurial > repos > rmarenco > hubarchivecreator
annotate BedBlastAlignments.py @ 23:2677f1899aa8 draft
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 07210e24fe7d22f5dfc84061310280f67f781fb1-dirty
| author | yating-l | 
|---|---|
| date | Tue, 09 May 2017 15:42:43 -0400 | 
| parents | 884ee2a71680 | 
| children | df42241d3731 | 
| rev | line source | 
|---|---|
| 
21
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
1 #!/usr/bin/python | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
2 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
3 import os | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
4 import tempfile | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
5 import string | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
6 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
7 from Datatype import Datatype | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
8 from Track import Track | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
9 from TrackDb import TrackDb | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
10 from util import subtools | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
11 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
12 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
13 class BedBlastAlignments( Datatype ): | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
14 def __init__(self, input_bed_blast_alignments_false_path, data_bed_blast_alignments): | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
15 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
16 super(BedBlastAlignments, self).__init__() | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
17 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
18 self.input_bed_blast_alignments_false_path = input_bed_blast_alignments_false_path | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
19 self.name_bed_blast_alignments = data_bed_blast_alignments["name"] | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
20 self.priority = data_bed_blast_alignments["order_index"] | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
21 self.track_color = data_bed_blast_alignments["track_color"] | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
22 # TODO: Think about how to avoid repetition of the group_name everywhere | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
23 self.group_name = data_bed_blast_alignments["group_name"] | 
| 
23
 
2677f1899aa8
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 07210e24fe7d22f5dfc84061310280f67f781fb1-dirty
 
yating-l 
parents: 
21 
diff
changeset
 | 
24 if data_bed_blast_alignments["long_label"]: | 
| 
 
2677f1899aa8
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 07210e24fe7d22f5dfc84061310280f67f781fb1-dirty
 
yating-l 
parents: 
21 
diff
changeset
 | 
25 self.long_label = data_bed_blast_alignments["long_label"] | 
| 
 
2677f1899aa8
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 07210e24fe7d22f5dfc84061310280f67f781fb1-dirty
 
yating-l 
parents: 
21 
diff
changeset
 | 
26 else: | 
| 
 
2677f1899aa8
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 07210e24fe7d22f5dfc84061310280f67f781fb1-dirty
 
yating-l 
parents: 
21 
diff
changeset
 | 
27 self.long_label = self.name_bed_blast_alignments | 
| 
21
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
28 #sortedBedFile = tempfile.NamedTemporaryFile(suffix=".sortedBed") | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
29 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
30 # Sort processing | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
31 #subtools.sort(self.input_bigpsl_false_path, sortedBedFile.name) | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
32 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
33 # bedToBigBed processing | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
34 # TODO: Change the name of the bb, to tool + genome + .bb | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
35 trackName = "".join( ( self.name_bed_blast_alignments, '.bb' ) ) | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
36 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
37 myBigBedFilePath = os.path.join(self.myTrackFolderPath, trackName) | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
38 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
39 auto_sql_option = os.path.join(self.tool_directory, 'bigPsl.as') | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
40 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
41 with open(myBigBedFilePath, 'w') as bigBedFile: | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
42 subtools.bedToBigBed(self.input_bed_blast_alignments_false_path, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
43 self.chromSizesFile.name, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
44 bigBedFile.name, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
45 typeOption='bed12+12', | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
46 tab='True', | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
47 autoSql=auto_sql_option) | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
48 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
49 self.createTrack(file_path=trackName, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
50 track_name=trackName, | 
| 
23
 
2677f1899aa8
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 07210e24fe7d22f5dfc84061310280f67f781fb1-dirty
 
yating-l 
parents: 
21 
diff
changeset
 | 
51 long_label=self.long_label, track_type='bigBed 12 +', visibility='dense', | 
| 
21
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
52 priority=self.priority, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
53 track_file=myBigBedFilePath, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
54 track_color=self.track_color, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
55 group_name=self.group_name) | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
56 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
57 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
58 # dataURL = "tracks/%s" % trackName | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
59 # | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
60 # trackDb = TrackDb( | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
61 # trackName=trackName, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
62 # longLabel=self.name_bed_simple_repeats, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
63 # shortLabel=self.getShortName( self.name_bed_simple_repeats ), | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
64 # trackDataURL=dataURL, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
65 # trackType='bigBed 4 +', | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
66 # visibility='dense', | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
67 # priority=self.priority, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
68 # ) | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
69 # | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
70 # self.track = Track( | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
71 # trackFile=myBigBedFilePath, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
72 # trackDb=trackDb, | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
73 # ) | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
74 | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
75 print("- Bed Blast alignments %s created" % self.name_bed_blast_alignments) | 
| 
 
884ee2a71680
planemo upload for repository https://github.com/goeckslab/hub-archive-creator commit 6ac76e7da539ca1773fb809054679f0bf8a06972-dirty
 
yating-l 
parents:  
diff
changeset
 | 
76 #print("- %s created in %s" % (trackName, myBigBedFilePath)) | 
