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.

Article connexe - Pandas DataFrame

  • Afficher toutes les colonnes d'un DataFrame de Pandas
  • Fusionner les Pandas DataFrames sur l'index
  • Article connexe - Pandas CSV

  • Comment créer une colonne vide dans Pandas DataFrame
  • Comment appliquer une fonction à une colonne dans Pandas Dataframe