731 Stimmen

Wie man vermeidet, dass Pandas einen Index in einer gespeicherten CSV-Datei erstellt

Ich versuche, eine CSV-Datei in einen Ordner zu speichern, nachdem ich einige Änderungen an der Datei vorgenommen habe.

Jedes Mal, wenn ich pd.to_csv('C:/Pfad der Datei.csv') verwende, hat die CSV-Datei eine separate Spalte mit Indizes. Ich möchte vermeiden, den Index in der CSV-Datei auszudrucken.

Ich habe es versucht:

pd.read_csv('C:/Pfad zur zu bearbeitenden Datei.csv', index_col=False)

Und um die Datei zu speichern...

pd.to_csv('C:/Pfad zum speichern der bearbeiteten Datei.csv', index_col=False)

Dennoch habe ich immer noch die unerwünschte Indexspalte. Wie kann ich dies vermeiden, wenn ich meine Dateien speichere?

1100voto

Probably rgbkrk Punkte 11056

Verwenden Sie index=False.

df.to_csv('deine.csv', index=False)

134voto

blitu12345 Punkte 3286

Es gibt zwei Möglichkeiten, mit der Situation umzugehen, in der wir nicht möchten, dass der Index in der CSV-Datei gespeichert wird.

  1. Wie von anderen bereits erwähnt, können Sie index=False verwenden, um Ihr
    DataFrame in der CSV-Datei zu speichern.

    df.to_csv('file_name.csv',index=False)

  2. Oder Sie können Ihr DataFrame so speichern, wie es ist, mit einem Index, und beim Lesen einfach die Spalte unnamed 0 löschen, die Ihren bisherigen Index enthält. Ganz einfach!

    df.to_csv('file_name.csv')
    df_new = pd.read_csv('file_name.csv').drop(['unnamed 0'],axis=1)

115voto

amalik2205 Punkte 3306

Wenn Sie keinen Index möchten, lesen Sie die Datei mit folgendem Code:

import pandas as pd
df = pd.read_csv('file.csv', index_col=0)

Speichern Sie es mit dem folgenden Code:

df.to_csv('file.csv', index=False)

34voto

Lucas P. Punkte 4102

Wie andere bereits erwähnt haben, wenn Sie die Indexspalte nicht speichern möchten, können Sie df.to_csv('processed.csv', index=False) verwenden

Da die Daten, die Sie normalerweise verwenden, bereits einen Index haben, lassen Sie uns sagen eine 'Timestamp'-Spalte, würde ich den Index behalten und die Daten damit laden.

Um die indizierten Daten zu speichern, setzen Sie zuerst ihren Index und speichern Sie dann das DataFrame:

df.set_index('Timestamp')
df.to_csv('processed.csv')

Nachher können Sie die Daten entweder mit dem Index lesen:

pd.read_csv('processed.csv', index_col='Timestamp')

oder die Daten lesen und dann den Index setzen:

pd.read_csv('filename.csv')
pd.set_index('column_name')

20voto

khaled Fouda Punkte 359

Eine weitere Lösung, wenn Sie diese Spalte als Index behalten möchten.

pd.read_csv('filename.csv', index_col='Unnamed: 0')

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X