3 votes

Construire un DataFrame à partir d'une liste de <classe 'pandas.core.frame.Pandas'>.

Comment construire un DataFrame pandas à partir d'une liste de pandas.core.frame.Pandas éléments ?

Exemple de code illustrant la question :

J'ai le DataFrame ci-dessous :

import pandas as pd     
df = pd.DataFrame({'col1': [1, 2], 'col2': [0.1, 0.2]}, index=['a', 'b'])

   col1  col2
a     1   0.1
b     2   0.2

Je procède ensuite à une itération pour établir une liste des lignes :

data_list = []
for row in df.itertuples():
    data_list.append(row)

[Pandas(Index='a', col1=1, col2=0.1), Pandas(Index='b', col1=2, col2=0.2)]

Lorsque je vérifie le type de données, j'obtiens :

for i in data_list:
    print(type(i))

<class 'pandas.core.frame.Pandas'>
<class 'pandas.core.frame.Pandas'>

Comment reconstruire cette liste de données en un DataFrame ?

J'ai essayé de convertir Counter from Collections en dictionnaire, mais je n'y parviens pas. Je ne sais pas si c'est la meilleure façon de résoudre le problème.

2voto

yatu Points 39897

Les pd.DataFrame fonctionne parfaitement avec les tuples nommés et construit également les colonnes à partir des noms :

pd.DataFrame(data_list).set_index('Index')

        col1  col2
Index            
a         1   0.1
b         2   0.2

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X