合併多個DataFrame
問題陳述
合併多個DataFrame 可能是一項艱鉅的任務,尤其是當DataFrame 具有不同的值時形狀和結構。最常見的方法是迭代地使用 merge() 函數,這對於大量資料幀來說可能會變得複雜且不可讀。
問題
一個人如何合併多個高效且優雅地基於公共列的資料幀,無需訴諸遞歸或複雜的方法迭代器?
答案
reduce() 函數為合併多個資料幀提供了遞歸的替代方法。 reduce() 函數迭代地將函數應用於項目列表,將其減少為單一值。在本例中,函數是 merge() 函數,項目列表是資料幀列表。
import pandas as pd from functools import reduce # Load dataframes df1 = pd.read_csv('dataframe1.csv') df2 = pd.read_csv('dataframe2.csv') df3 = pd.read_csv('dataframe3.csv') # Create a list of dataframes dataframes = [df1, df2, df3] # Merge dataframes df_merged = reduce(lambda left, right: pd.merge(left, right, on='date', how='outer'), dataframes)
說明
reduce()呼叫函數時,函數 pd.merge 作為第一個參數,資料幀列表作為第二個參數。 pd.merge() 函數合併兩個資料幀,reduce() 函數迭代地將結果與列表中的下一個資料幀合併,將列表縮減為單一合併的資料幀。
on='date'參數指定應基於「日期」列執行合併,假定該列對所有資料幀都是通用的。 how='outer' 參數指示兩個資料幀中的所有行都應包含在合併的資料幀中,無論它們是否具有「日期」列的相應值。這可確保具有相同日期值的所有行合併為一行。
結果
df_merged 變數現在包含一個合併的資料幀,其中包含來自各個資料幀,每個資料幀中的相應行根據「日期」列對齊。該方法高效、靈活且易於閱讀,使其成為合併大量資料幀的理想解決方案。
以上是如何在沒有複雜迭代器的情況下基於公共列有效地合併多個 DataFrame?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

文章討論了由於語法歧義而導致的Python中元組理解的不可能。建議使用tuple()與發電機表達式使用tuple()有效地創建元組。 (159個字符)

本文解釋了Python中的模塊和包裝,它們的差異和用法。模塊是單個文件,而軟件包是帶有__init__.py文件的目錄,在層次上組織相關模塊。

文章討論了Python中的Docstrings,其用法和收益。主要問題:Docstrings對於代碼文檔和可訪問性的重要性。

本文討論了Python中的“ Pass”語句,該語句是函數和類等代碼結構中用作佔位符的空操作,允許在沒有語法錯誤的情況下實現將來實現。

文章在Python中討論 /和//運營商: / for for True Division,//用於地板部門。主要問題是了解它們的差異和用例。 Character數量:158


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

記事本++7.3.1
好用且免費的程式碼編輯器

禪工作室 13.0.1
強大的PHP整合開發環境

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Atom編輯器mac版下載
最受歡迎的的開源編輯器