Bonjour à tous,
Je suis débutante sur Python et j'ai vraiment du mal avec les passages d'un format d'objet à un autre.
Je récupère une immense matrice d'environ 220 000 lignes * 9 colonnes d'un fichier CSV via pandas.
J'obtiens donc un data frame.
Voici mon fichier importé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 import pandas as pd toto = pd.DataFrame data_test = pd.DataFrame(pd.read_csv('anabena.csv', sep=";")) data_test = data_test.drop(columns='Unnamed: 8')
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 ID FWS SWS HS FL Red HS FL Orange HS SWS LS FL Red LS \ 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 2 0 8,545183 97,65923 30,36592 3,967407 4,882962 0,7629628 3 0 11,59703 131,3822 39,97925 5,035554 6,103702 1,22074 4 0 12,2074 133,8237 39,52147 4,425184 5,951109 1,22074 5 0 12,97037 135,0444 39,97925 3,662221 6,103702 1,22074 6 0 13,88592 135,0444 41,0474 3,051851 6,408887 1,22074 ... ... ... ... ... ... ... 220826 592 25,63555 39,67406 7,019258 1,678518 4,577776 0,6103702 220827 592 26,5511 62,25776 7,019258 2,136296 5,035554 0,7629628 220828 592 27,77184 98,11701 7,019258 2,899259 5,798517 0,7629628 220829 592 29,29777 148,1674 6,714072 3,662221 7,019258 0,7629628 220830 592 30,6711 207,5259 6,56148 4,272592 8,087405 0,7629628 220831 592 31,58666 263,5273 6,56148 4,272592 9,155553 0,7629628 220832 592 31,89184 299,3866 6,408887 3,814814 9,918516 0,7629628
Je n'arrive pas à ensuite créer un nouvel objet (ou plusieurs) contenant pour chaque ID l'ensemble des points lui correspondant. En fait, j'ai 8 colonnes avec un nombre de points variables pour chaque ID et je n'arrive pas à grouper tous les points de chaque colonne dans un seul objet correspondant à l'ID.
J'ai essayé de passer en dictionnaire, en liste mais je dois certainement mal m'y prendre. J'ai surtout utilisé pandas mais honnêtement je ne comprends pas comment cela fonctionne. Après je me suis dit que je pouvais faire un dictionnaire de dictionnaire mais je ne trouve pas comment le fabriquer...
Sous R, j'utilise la fonction by qui me détecte les valeurs d'ID et qui me fait une liste contenant 8 listes pour chaque ID. Peut être connaissez vous un équivalent Python ?
En vous remerciant,
Partager