def clumpfinding(genome,k,t,L): frequentPatterns = [] clump = [0] * (4**k) for i in range(len(genome) - L + 1): text = genome[i:i+L] frequencyArray = freqArray.computeFrequencies(text,k) for i in range(4**k): if frequencyArray[i] >= t: clump[i] = 1 for i in range(4**k): if clump[i] == 1: frequentPatterns.append(freqArray.NumberToPattern(i,k)) return frequentPatterns
def clumpfinding(genome, k, t, L): frequentPatterns = [] clump = [0] * (4**k) for i in range(len(genome) - L + 1): text = genome[i:i + L] frequencyArray = freqArray.computeFrequencies(text, k) for i in range(4**k): if frequencyArray[i] >= t: clump[i] = 1 for i in range(4**k): if clump[i] == 1: frequentPatterns.append(freqArray.NumberToPattern(i, k)) return frequentPatterns
def betterClumpFinding(genome,k,t,L): frequentPatterns = [] clump = [0] * (4**k) text = genome[0:L] frequencyArray = freqArray.computeFrequencies(text,k) for i in range(4**k): if frequencyArray[i] >= t : clump[i] = 1 for i in range(1, len(genome) - L + 1): firstPattern = genome[i-1:i-1+k] index = freqArray.PatternToNumber(firstPattern) frequencyArray[index] = frequencyArray[index] - 1 lastPattern = genome[i+L-k:i+L] index = freqArray.PatternToNumber(lastPattern) frequencyArray[index] = frequencyArray[index] + 1 if frequencyArray[index] >= t: clump[index] = 1 for i in range(4**k): if clump[i] == 1: frequentPatterns.append(freqArray.NumberToPattern(i,k)) return frequentPatterns
def betterClumpFinding(genome, k, t, L): frequentPatterns = [] clump = [0] * (4**k) text = genome[0:L] frequencyArray = freqArray.computeFrequencies(text, k) for i in range(4**k): if frequencyArray[i] >= t: clump[i] = 1 for i in range(1, len(genome) - L + 1): firstPattern = genome[i - 1:i - 1 + k] index = freqArray.PatternToNumber(firstPattern) frequencyArray[index] = frequencyArray[index] - 1 lastPattern = genome[i + L - k:i + L] index = freqArray.PatternToNumber(lastPattern) frequencyArray[index] = frequencyArray[index] + 1 if frequencyArray[index] >= t: clump[index] = 1 for i in range(4**k): if clump[i] == 1: frequentPatterns.append(freqArray.NumberToPattern(i, k)) return frequentPatterns