Bonjour,
Je souhaite remplacer les bases A et G situé dans une position précise par T dans une séquence donnée
Je souhaite remplacer les A et G par T pour les positions entre 11-20; 34-57 et 105-116
fichier de la séquence
fichier position
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 >seq CGCCTGACTGGAGGCGGATCCAGCCGGCCAGCTGCCTCTCTGGAGCCCAGCTCTTGGGCCCCCTGCACTCACCTGCTCTTCCTGGGCTGGCTGTCTCCTGCTCATCCAGCCATGCGGT
Ainsi obtenir au final :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 11 20 34 57 105 116
Ce que j'ai fait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 CGCCTGACTGNNNNNNNNNNCAGCCGGCCAGCTNNNNNNNNNNNNNNNNNNNNNNNNGCCCCCTGCACTCACCTGCTCTTCCTGGGCTGGCTGTCTCCTGCTCANNNNNNNNNNNN
J'extrais les sous-séqueces correspondant aux différentes positions puis je remplace A et G par T dans ses sous séquences. Mais, je coince car je n'ai pas la séquence finale
Je pense que ce n'est pas la bonne méthode mais comment remplacer plusieurs caractère dans un texte à une position donnée?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 for line in open(file_position): line = line.replace('\n', '') element = line.split("\t") start_results=int(element[1]) seq = ''.join(name2seq.values()) # séquence sous_seq = seq[start_results-1:stop_results:1] # extraction de la sous-séquence mask = {'A':'T','G':'T'} print (''.join([ e.replace(e, mask[e]) for e in sous_seq])
Partager