Pandas - Wo liegt der Fehler?
Verfasst: Freitag 12. April 2019, 20:32
Hallo an Alle! 
Ich habe mir ein kleines Skript geschrieben, welches mir die Formatierung von .xls Dateien erleichtern soll.
Python 3.6 (Anaconda) mit Numpy & Pandas, Skript über Sublime Text 3.
-----------------------------------------------------------------------------------------------------------
1) df = pd.read_excel("Pfad/input.xls") => funktioniert
2) df = df.drop([0,1], axis=1) => [wirft Fehlermeldung aus: KeyError: '[0 1] not found in axis']
3) writer = pd.ExcelWriter("test.xlsx", engine = "xlsxwriter") => funktioniert
4) df.to_excel(writer, sheet_name="sheet1") => funktioniert
5) writer.save() => funktioniert
-----------------------------------------------------------------------------------------------------------
zu 2) Komischerweise funktioniert dies nicht, obwohl df = df.drop([0,1], axis=1) als Beispiel im doc angegeben ist... (https://pandas.pydata.org/pandas-docs/s ... .drop.html)
Ziel ist es, aus input.xls die Spalten mit Index 0 bis inklusive 4 zu entfernen und dann jede zweite Spalte zu entfernen:
input: 0,1,2,3,4,5,6,7,8,9[etc.] => output: 5,7,9,11,13,15 [etc.]
Evtl. kann dieses Code-Stückchen dabei helfen: df = df.iloc[[0,-1], [lambda x: x.index % 2 == 1]]
Kann mir Jemand helfen, die Spalten zu entfernen?
Vielen Dank und schöne Grüße!
HerrBert
Ich habe mir ein kleines Skript geschrieben, welches mir die Formatierung von .xls Dateien erleichtern soll.
Python 3.6 (Anaconda) mit Numpy & Pandas, Skript über Sublime Text 3.
-----------------------------------------------------------------------------------------------------------
1) df = pd.read_excel("Pfad/input.xls") => funktioniert
2) df = df.drop([0,1], axis=1) => [wirft Fehlermeldung aus: KeyError: '[0 1] not found in axis']
3) writer = pd.ExcelWriter("test.xlsx", engine = "xlsxwriter") => funktioniert
4) df.to_excel(writer, sheet_name="sheet1") => funktioniert
5) writer.save() => funktioniert
-----------------------------------------------------------------------------------------------------------
zu 2) Komischerweise funktioniert dies nicht, obwohl df = df.drop([0,1], axis=1) als Beispiel im doc angegeben ist... (https://pandas.pydata.org/pandas-docs/s ... .drop.html)
Ziel ist es, aus input.xls die Spalten mit Index 0 bis inklusive 4 zu entfernen und dann jede zweite Spalte zu entfernen:
input: 0,1,2,3,4,5,6,7,8,9[etc.] => output: 5,7,9,11,13,15 [etc.]
Evtl. kann dieses Code-Stückchen dabei helfen: df = df.iloc[[0,-1], [lambda x: x.index % 2 == 1]]
Kann mir Jemand helfen, die Spalten zu entfernen?
Vielen Dank und schöne Grüße!
HerrBert