Skip to content
Snippets Groups Projects
Commit 0883380b authored by J.F.J. Laros's avatar J.F.J. Laros
Browse files

Added an example solution for the sequencer assignment.

parent 227b8241
No related branches found
No related tags found
No related merge requests found
#!/usr/bin/env python
from sequencer import Sequencer
def quality(quals):
return sum(quals) / len(quals)
def trim(read, quals, score):
for position in range(len(read) - 1, -1, -1):
if quals[position] >= score:
return read[:position + 1], quals[:position + 1]
def make_fastq():
spots = 2
run = Sequencer(spots)
reads = ["" for _ in range(spots)]
quals = [[] for _ in range(spots)]
for tile in run:
for read_id, base in enumerate(tile):
reads[read_id] += base[0]
quals[read_id].append(base[1])
for read_id, read in enumerate(reads):
print read, quality(quals[read_id])
read, quals[read_id] = trim(read, quals[read_id], 39)
print read, quality(quals[read_id])
if __name__ == "__main__":
make_fastq()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment