首頁  >  文章  >  後端開發  >  如何組合 For 迴圈中產生的 Pandas DataFrame:綜合解決方案

如何組合 For 迴圈中產生的 Pandas DataFrame:綜合解決方案

Barbara Streisand
Barbara Streisand原創
2024-10-30 14:01:02308瀏覽

How to Combine Pandas DataFrames Generated in a For Loop: A Comprehensive Solution

組合在For 循環中產生的Pandas DataFrame:綜合解決方案

在資料操作方面,Pandas 提供了一套強大的工具用於處理結構化資料。一項常見任務是合併來自多個來源的資料。實現此目的的一種方法是在 for 迴圈中產生資料幀,然後附加它們以建立統一的資料幀。

要附加在 for 迴圈中產生的資料幀,您需要使用與您嘗試過的資料幀。您提供的代碼:

appended_data = pandas.DataFrame.append(data) # requires at least two arguments

需要至少兩個資料幀作為參數,這不適合逐一附加多個資料幀。相反,我們可以使用 pd.concat 將資料幀列表合併為一個更大的資料幀。

這是一個改進的解決方案:

<code class="python">appended_data = []
for infile in glob.glob("*.xlsx"):
    data = pandas.read_excel(infile)
    # Store each dataframe in a list
    appended_data.append(data)
# Concatenate the list of dataframes into a single dataframe
appended_data = pd.concat(appended_data)
# Write the resulting dataframe to a new Excel file
appended_data.to_excel('appended.xlsx')</code>

在此修改後的程式碼中:

  1. 我們建立一個空列表append_data來儲存各個資料幀。
  2. 在循環內,我們將每個Excel檔案讀入資料幀並將其附加到此列表中。
  3. 使用 pd. concat,我們將清單中的所有資料幀合併到一個名為append_data的資料幀中。
  4. 最後,我們將附加資料幀寫入名為「append.xlsx」的新Excel檔案。

此方法可確保循環中產生的所有資料幀合併為單一資料幀,為您提供統一的資料集。

以上是如何組合 For 迴圈中產生的 Pandas DataFrame:綜合解決方案的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn