web-dev-qa-db-fra.com

Python en utilisant pandas pour convertir xlsx en fichier csv. Comment supprimer la colonne d'index?

J'utilise le code suivant pour convertir les fichiers .xlsx en fichiers .csv.

import pandas as pd
data_xls = pd.read_Excel('excelfile.xlsx', 'Sheet2', index_col=None)
data_xls.to_csv('csvfile.csv', encoding='utf-8')

Le code fonctionne, mais je reçois une colonne d'index avec les numéros de cellule dont je ne veux pas. Est-il possible de ne pas inclure ou supprimer cette colonne d'index?

Sortie du fichier

 Unnamed  Data
    0   0.99319613
    1   0.99319613
    2   0.99319613
    3   0.99319613
    4   0.99319613
    5   0.99319613
12
acb

Comme indiqué dans les documents pour DataFrame.to_csv() , passez simplement index=False comme argument de mot clé pour ne pas écrire de noms de ligne.

data_xls.to_csv('csvfile.csv', encoding='utf-8', index=False)
16
miradulo

Pour supprimer des noms de colonne:

data_xls.to_csv("filename.csv",index=False,header=None ,encoding='utf-8')

1
Kumar S

Inspiré par miradulo et corrige un problème de conversion de nombre:

import pandas as pd
data_xls = pd.read_Excel('excelfile.xlsx', 'Sheet2', dtype=str, index_col=None)
data_xls.to_csv('csvfile.csv', encoding='utf-8', index=False)

Peut supprimer 'Sheet2' s'il y a une feuille. dtype = str pour éviter la conversion des nombres.

0
Punnerud