Zusammenführen von in einer For-Schleife generierten Datenrahmen
Bei der Arbeit mit mehreren Datenquellen ist es häufig erforderlich, Daten in einem einzigen konsolidierten Datenrahmen zu kombinieren . Diese Frage veranschaulicht ein häufiges Problem beim Versuch, Datenrahmen anzuhängen, die in einer for-Schleife mit der Funktion pd.concat generiert wurden.
Der in der Frage vorgestellte erste Ansatz weist aufgrund des falschen Aufrufs von pd.append einen Fehler auf. Diese Funktion erfordert mindestens zwei Argumente. Das erste Argument ist der Datenrahmen, an den angehängt werden soll, während das zweite Argument die anzuhängenden Daten sein sollte. Der Code versucht, Daten an sich selbst anzuhängen, was ungültig ist.
Der richtige Weg, Datenrahmen anzuhängen, besteht darin, sie in einer Liste zu speichern und sie dann mit pd.concat zu einem einzigen Datenrahmen zusammenzuführen. Hier ist eine verbesserte Lösung:
<code class="python">appended_data = [] for infile in glob.glob("*.xlsx"): data = pandas.read_excel(infile) appended_data.append(data) # concatenate the list of dataframes appended_data = pd.concat(appended_data) # save the merged dataframe to an excel file appended_data.to_excel('appended.xlsx')</code>
Dieser Code importiert die erforderlichen Bibliotheken, iteriert über die Excel-Dateien, liest Daten aus jeder Datei und speichert den Datenrahmen in einer Liste. Schließlich wird pd.concat verwendet, um die Liste der Datenrahmen zu verketten und den zusammengeführten Datenrahmen in eine neue Excel-Datei zu exportieren. Dieser Ansatz ermöglicht das nahtlose Anhängen von in einer Schleife generierten Datenrahmen.
Das obige ist der detaillierte Inhalt vonWie kombiniere ich in einer For-Schleife generierte DataFrames mit pd.concat?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!