Heim >Backend-Entwicklung >Python-Tutorial >Wie kann man in Python effizient mehrere DataFrames innerhalb einer For-Schleife anhängen?
Anhängen mehrerer DataFrames innerhalb einer For-Schleife in Python
Bei der Arbeit mit großen Datensätzen, die in mehreren Excel-Dateien gespeichert sind, ist häufig eine Konsolidierung erforderlich Alle Daten werden zur weiteren Analyse oder Verarbeitung in einem einzigen DataFrame zusammengefasst. Dies kann mühelos mithilfe der Pandas-Bibliothek von Python innerhalb einer for-Schleife erreicht werden.
Um Datenrahmen anzuhängen, ist es wichtig zu beachten, dass die Methode DataFrame.append() mindestens zwei Argumente erfordert. Im bereitgestellten Code wird nur ein Argument, Daten, übergeben. Der richtige Ansatz besteht darin, alle DataFrames in einer Liste innerhalb der Schleife zu speichern und dann pd.concat zu verwenden, um die Liste in einem einzigen DataFrame zusammenzuführen.
Hier eine ausführliche Erklärung:
<code class="python">import pandas as pd import glob # Initialize an empty list to store DataFrames appended_data = [] # Iterate over Excel files in a specified directory for infile in glob.glob("*.xlsx"): print("Processing file:", infile) # Read data from Excel file into a DataFrame data = pd.read_excel(infile) # Append DataFrame to the list appended_data.append(data) # Concatenate DataFrames to create a consolidated DataFrame final_df = pd.concat(appended_data, ignore_index=True) # Save consolidated data to a new Excel file final_df.to_excel('appended.xlsx', index=False)</code>
Wenn Sie diesem Ansatz folgen, können Sie mehrere in einer for-Schleife generierte DataFrames nahtlos anhängen und die konsolidierten Daten in einer neuen Excel-Datei speichern. Dadurch können Sie effizient und effektiv mit großen und unzusammenhängenden Datensätzen arbeiten.
Das obige ist der detaillierte Inhalt vonWie kann man in Python effizient mehrere DataFrames innerhalb einer For-Schleife anhängen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!