Bonjour,
actuellement débutant en python3 j'aurais besoin d'aide pour un exercice.
En effet j'ai un fichier "gène csv" avec dedans des lignes d'espèces avec un gène précis.
Un petit exemple pour mieux voir :
Sacs est une espèces parmi les 2800, j'aimerai faire un dictionnaire de type set avec en clef le nom de l'espèce (ici sacs, mais les autres espèces aussi) et en valeur leurs gène (ici Genes.78052 , Genes.23416 etc etc)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 sacs chro SUSAZ_00115 complement(15609..16733) cysteine desulfurase Genes.78052 sacs chro SUSAZ_00120 complement(16720..18426) AMP-dependent synthetase K01895 Genes.23416 sacs chro SUSAZ_00125 complement(18438..18914) nucleotide binding protein PINc K07060 Genes.790508 sacs chro SUSAZ_00130 complement(18904..19650) inorganic polyphosphate/ATP-NAD kinase K00858 Genes.275996 sacs chro SUSAZ_00135 complement(19659..19943) hypothetical protein Genes.791779 sacs chro SUSAZ_00140 20092..21093 ferredoxin--NADP reductase K00384 Genes.145309
De ce style là : dico[sacs]= 'Genes.145309', 'Genes.791779' ...
Hors je ne comprends pas cela veut pas et j'ai beau chercher sur internet je ne trouve pas de solution :/ Votre aide sera la bienvenue.
Je vous montre mon script actuel :
#pour essayer avec une seule espèce et voir si cela marché, pour l'instant cela m'affiche rien de concluant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 import re from collections import defaultdict dicoesp= defaultdict(set) #dictionnaire d'espece with open('genes.csv', 'r') as F1: for ligne in F1: lignepropre=ligne.rstrip('\n') lignesplit=lignepropre.split('\t') #print(lignesplit[0]) #print(lignesplit[-1]) a=lignesplit[0] b=lignesplit[-1] dicoesp[a]={b} print(dicoesp['sacs'])
Merci d'avance![]()
Partager