ich einen Ordner mit CSV-Dateien, die Zeitreihen im folgende Format enthalten:Pandas - Konvertieren Wörterbuch zu Datenrahmen - Schlüssel als Spalt
1 0.950861
2 2.34248
3 2.56038
4 3.46226
...
ich Zugriff auf diese Textdateien durch Schleifen über den Ordner mit den Dateien und Weitergabe jede Text-Datei in ein Wörterbuch:
data_dict = {textfile: pd.read_csv(textfile, header=3, delim_whitespace=True, index_col=0) for textfile in textfiles}
ich mag die Spalten fusionieren, die die Daten nebeneinander mit dem Wörterbuchschlüssel als Index (Pathname der Text-Dateien) enthalten. Sie haben alle die gleiche Zeilennummer.
Bisher habe ich versucht, das Wörterbuch auf eine pd.Dataframe wie dies vorbei:
df = pd.DataFrame.from_dict(data_dict, orient='index')
Eigentlich ist die Ausrichtung muss die Standard ‚Spalten‘ sein, aber es führt zu einem Fehler: Wert Fehler: wenn alle skalare Werte verwenden, müssen Sie einen Index
passieren, wenn ich dies tun, bekomme ich das falsche Ergebnis: Excel_Output
Dies ist, wie ich den Rahmen an Excel übergeben:
writer = pd.ExcelWriter("output.xls")
df.to_excel(writer,'data', index_label = 'data', merge_cells =False)
writer.save()
Ich denke, der Fehler muss das Wörterbuch an den Datenrahmen übergeben werden. Ich habe versucht, pd.concat/merge/append, aber nichts gibt das richtige Ergebnis zurück.
Vielen Dank im Voraus!
Ok, das funktioniert perfekt. Mein Fehler war Zeilennummern nicht übereinstimmen. Ich könnte das beheben, indem ich ignore_index = True setze. Der Unterschied zwischen dem Dictionary-Weg und dem Listenverständnis ist: Die Dictionary-Keys fungieren als Spaltenüberschriften, was in meinem Fall sehr nützlich ist. Danke für die Hilfe! –