Convertir Pandas en CSV sans indice

Manav Narula 23 janvier 2022
Convertir Pandas en CSV sans indice

Comme vous le savez, l’index peut être considéré comme un point de référence pour le stockage et l’accès aux enregistrements dans une DataFrame. Ils sont uniques pour chaque ligne et vont généralement de 0 à la dernière ligne de la DataFrame, mais nous pouvons également avoir des numéros de série, des dates et d’autres colonnes uniques comme index d’une DataFrame.

Mais parfois, lors de l’exportation ou de la lecture de fichiers, cette colonne d’index supplémentaire peut ne pas être requise par l’utilisateur. Le problème sera illustré plus clairement à l’aide du DataFrame suivant.

import pandas as pd

df = pd.DataFrame([[6, 7, 8], [9, 12, 14], [8, 10, 6]], columns=["a", "b", "c"])

print(df)

Production :

   a   b   c
0  6   7   8
1  9  12  14
2  8  10   6

Comme vous pouvez le voir, nous avons un index supplémentaire ajouté au DataFrame, qui peut être évité par l’utilisateur lors de l’enregistrement dans un fichier. Si nous voulons convertir ce DataFrame en un fichier CSV sans la colonne d’index, nous pouvons le faire en définissant index comme False dans la fonction to_csv().

Exemples de codes :

import pandas as pd

df = pd.DataFrame([[6, 7, 8], [9, 12, 14], [8, 10, 6]], columns=["a", "b", "c"])

print(df)

df.to_csv("data2.csv", index=False)

Production :

   a   b   c
0  6   7   8
1  9  12  14
2  8  10   6

Comme on le voit dans la sortie, la DataFrame a bien un index, mais comme nous avons mis le paramètre index à False, le fichier CSV exporté n’aura pas cette colonne supplémentaire.

convertir Pandas en CSV sans index

Si nous exportons un fichier avec une colonne d’index supplémentaire (sans définir le paramètre index comme False) et que nous essayons ensuite de le lire, nous obtiendrons une colonne supplémentaire bizarre.

import pandas as pd

df = pd.DataFrame([[6, 7, 8], [9, 12, 14], [8, 10, 6]], columns=["a", "b", "c"])

print(df)

df.to_csv("data2.csv")

df_new = pd.read_csv("data2.csv")

print(df_new)

Production :

   a   b   c
0  6   7   8
1  9  12  14
2  8  10   6
   Unnamed: 0  a   b   c
0           0  6   7   8
1           1  9  12  14
2           2  8  10   6

Comme vous pouvez le voir, le DataFrame df_new a une colonne supplémentaire Unnamed.

Auteur: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Article connexe - Pandas DataFrame