def ratio_common_kmers_command(p, filename1, filename2, kmers=list_kmers): """ Ecrit à l'écran la proportion de k-mers (en fonction de p) du premier fichier qui sont présents dans le second fichier FASTA. Le paramètre p peut être une longueur de k-mers ou une graine, en fonction de la fonction spécifiée. """ seq1 = FastaFile(filename1).complete_sequence() seq2 = FastaFile(filename2).complete_sequence() kmers_list1 = kmers(p, seq1) kmers_list2 = kmers(p, seq2) print ratio_common_kmers(kmers_list1, kmers_list2)
def mapper_windows_kmers(lwin, swin, p, skmer, readseq, genomeseq, kmers=list_kmers): """ Retourne la liste de toutes les fenêtres de taille "length" et de décalage "shift" dont la proportion de k-mers est au moins égale au seuil "skmer". Le paramètre p peut être une longueur de k-mers ou une graine, en fonction de la fonction spécifiée. """ genome_windows = windows(lwin, swin, genomeseq) readseq_kmers_list = kmers(p, readseq) final_list = list() for (start, end, seq) in genome_windows: if ratio_common_kmers(readseq_kmers_list, kmers(p, seq)) >= skmer: final_list.append((start, end, seq)) return final_list
def list_kmers_command(p, filename, kmers=list_kmers): """ Ecrit à l'écran la liste de tous les k-mers (en fonction de p), un par ligne, dans l'ordre de toutes les séquences du fichier FASTA. Le paramètre p peut être une longueur de k-mers ou une graine, en fonction de la fonction spécifiée. """ fasta_file = FastaFile(filename) kmers_list = kmers(p, fasta_file.complete_sequence()) for kmers in kmers_list: print kmers