Unverified Commit 541cd289 authored by Bertrand  NÉRON's avatar Bertrand NÉRON
Browse files

Merge branch 'master' of gitlab.pasteur.fr:hub-courses/python_one_week_4_biologists_solutions

parents 97bc8a3e bdf447e8
Pipeline #58219 passed with stages
in 13 seconds
......@@ -391,7 +391,7 @@ Compute the 6 mers occurences of the sequence above, and print each 6mer and it'
>>> s = s.replace('\n', '')
>>> kmers = get_kmer_occurences(s, 6)
>>> for kmer in kmers:
>>> print kmer[0], '..', kmer[1]
>>> print(kmer[0], '..', kmer[1])
gcagag .. 2
aacttc .. 1
gcaact .. 1
......
def get_kmer_occurences(seq, kmer_len):
"""
return a list of tuple
return a list of tuple
each tuple contains a kmers present in seq and its occurence
"""
# Counter dictionary (keys will be kmers, values will be counts)
kmers = {}
stop = len(seq) - kmer_len
for i in range(stop + 1):
# Extract kmer starting at position i
kmer = seq[i: i + kmer_len]
# Increment the count for kmer
# or create the entry the first time this kmer is seen
# using default value 0, plus 1
kmers[kmer] = kmers.get(kmer, 0) + 1
return kmers.items()
\ No newline at end of file
# pairs (kmer, count)
return kmers.items()
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment