Comment créer une DataFrame vide avec pandas et la remplir ligne par ligne en python ?

Comment créer une DataFrame vide avec pandas et la remplir ligne par ligne en python ?

Daidalos 14 avril 2020


Exemple de comment créer une DataFrame vide avec pandas et la remplir ligne par ligne en python:

Créer une dataframe vide

Pour créer une dataframe vide on peut faire comme ceci:

>>> import pandas as pd
>>> df1 = pd.DataFrame(columns=['a','b','c','d'])
>>> df1
Empty DataFrame
Columns: [a, b, c, d]
Index: []

Nombre de lignes:

>>> len(df1)
0

Nombre de colonnes

>>> len(df1.columns)
4

Ajouter une ligne avec concat()

Pour ajouter une ligne, une solution possible est d'utiliser la fonction concat():

>>> df_new_row = pd.DataFrame(data=np.array([[1,2,3,4]]), columns=['a','b','c','d'])
>>> df1 = pd.concat([df1,df_new_row], ignore_index=True)
>>> df1
   a  b  c  d
0  1  2  3  4

ajouter encore une ligne:

 >>> df_new_row = pd.DataFrame(data=np.array([[21,24,37,45]]), columns=['a','b','c','d'])
 >>> df1 = pd.concat([df1,df_new_row], ignore_index=True)
 >>> df1
    a   b   c   d
0   1   2   3   4
1  21  24  37  45

Ajouter une ligne avec append()

Autre exemple avec append():

>>> new_row = {'a':31,'b':32,'c':33,'d':34}
>>> df1.append(new_row, ignore_index=True)
    a   b   c   d
0   1   2   3   4
1  21  24  37  45
2  31  32  33  34

Références

Liens Site
Python pandas: fill a dataframe row by row stackoverflow