コード例 #1
0
def search_matches(pattern, k, d):
	kmers = pattern_to_number.list_kmer(k)
	matches = []
	for kmer in kmers:
		if score_kmer(kmer, pattern, d) == 1:
			matches.append(kmer)
	return matches	
コード例 #2
0
def mutate_bases(word, m):
	"""returns every possible mutation of word with number of possible mutations m""" 
	legal_mutations =[]
	possibilities = pattern_to_number.list_kmer(len(word))
	for i in possibilities:
		if count_mismatches(i, word) <= m:
			legal_mutations.append(i)
	return legal_mutations
コード例 #3
0
def median_string(dna, k):
	"""
	Iterates through every possible kmer of length k and returns a kmer that minimizes d(pattern, dna).
	This is a faster version of the motif_finding problem.
	"""
	kmers = pattern_to_number.list_kmer(k)
	best_pattern = kmers[0]
	for kmer in kmers:
		if d(kmer, dna) < d(best_pattern, dna):
			best_pattern = kmer
	return best_pattern
コード例 #4
0
def number_to_pattern(index, k):
	list_of_kmers = pattern_to_number.list_kmer(k)
	return list_of_kmers[index]