Entfernen von index-Spalte in pandas beim Lesen einer csv
Ich habe den folgenden code der eine CSV-Datei importiert. Es gibt 3 Spalten und ich möchte legen Sie die ersten zwei Variablen. Wenn ich die zweite Spalte in die variable "Effizienz" die index-Spalte ist auch geheftet. Wie kann ich loswerden der index-Spalte?
df = pd.DataFrame.from_csv('Efficiency_Data.csv', header=0, parse_dates=False)
energy = df.index
efficiency = df.Efficiency
print efficiency
Versuchte ich mit
del df['index']
nachdem ich
energy = df.index
welche ich gefunden habe in einem anderen Beitrag aber, dass die Ergebnisse in "KeyError: 'index' "
Du musst angemeldet sein, um einen Kommentar abzugeben.
DataFrames und Serie haben immer einen index. Obwohl es zeigt neben der Spalte(N), es ist keine Spalte, das ist der Grund, warum
del df['index']
hat nicht funktioniert.Wenn Sie möchten, ersetzen Sie den index mit einfachen sequenziellen zahlen, verwenden Sie die
df.reset_index()
.Bekommen ein Gefühl dafür, warum der index da ist und wie es verwendet wird, siehe z.B. 10 Minuten zu Pandas.
index.name = None
.Beim Lesen zu und von Ihrer CSV-Datei enthalten das argument
index=False
so zum Beispiel:und Lesen von csv -
Dieser soll verhindern, dass das Problem so brauchen Sie nicht, um es zu beheben höher.
index_col=False
.df.to_sql("table",cursor,if_exists="append",index=False)
behebt auch die sqlite-Fehlersqlite3.OperationalError: table message has no column named index
index=False
fürto_excel()
undindex_col=False
mitread_csv()
im pandas 0.23.4. :-/df.reset_index(drop=True, inplace=True)
drop
: "versuchen Sie nicht, legen Sie einen index in dataframe Spalten. Dies setzt der index zu den Standard-integer-index." pandas.pydata.org/pandas-docs/stable/generated/...Können Sie eine der Spalten als ein index in dem Fall ist es ein "id" zum Beispiel.
In diesem Fall wird die index-Spalte wird ersetzt durch eine der Spalten, die Sie gewählt haben.
Wenn Ihr problem ist das gleiche wie mir, wo Sie nur zurücksetzen möchten Sie die Spaltenüberschriften von 0 bis Spalte Größe. Tun
EDIT:
Nicht eine gute Idee, wenn Sie haben, heterogenen Datentypen. Besser verwenden Sie einfach
können Sie angeben, welche Spalte ist ein index in die csv-Datei mithilfe von index_col parameter der Funktion from_csv
wenn dies nicht lösen Ihr problem-bitte geben Sie z.B. Ihre Daten
Eine Sache, die ich tun, ist
df=df.reset_index()
dann
df=df.drop(['index'],axis=1)