Mercurial > repos > iuc > circos
annotate gc_skew.py @ 11:0ee66defe58b draft
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit b9ec351920dbc83fa14bd1f8cfdd0a6a19b89473"
| author | iuc | 
|---|---|
| date | Tue, 16 Nov 2021 09:19:09 +0000 | 
| parents | 890ef899a3d7 | 
| children | 
| rev | line source | 
|---|---|
| 2 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 1 import sys | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 2 | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 3 import pyBigWig | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 4 from Bio import SeqIO | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 5 from Bio import SeqUtils | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 6 | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 7 | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 8 span = int(sys.argv[2]) | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 9 bw = pyBigWig.open(sys.argv[3], "w") | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 10 | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 11 # Prepare header separately because ugh | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 12 data = [] | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 13 for rec in SeqIO.parse(sys.argv[1], "fasta"): | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 14 data.append((rec.id, len(rec))) | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 15 bw.addHeader(data) | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 16 | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 17 for rec in SeqIO.parse(sys.argv[1], "fasta"): | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 18 gc = SeqUtils.GC_skew(rec.seq, span) | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 19 | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 20 bw.addEntries(rec.id, 0, values=list(gc), span=span, step=span) | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 21 | 
| 
890ef899a3d7
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/circos commit 076837a2e9c2b6ececcea4aa286ea7a412387a96"
 iuc parents: diff
changeset | 22 bw.close() | 
