簡體   English   中英

合並或連接三個 DataFrames,其中所有三個 DataFrames 包含四個相同的列和一個唯一的列

[英]Merging or Join three DataFrames where all three DataFrames contain four identical columns and one unique column

我有三個數據幀:DF1、DF2、DF3。 它們都包含列['BHID','FROM','TO','SAMP ID','*unique element*'] DataFrame 沒有相同數量的行,但我想合並或加入這些 DF,以便最終 DataFrame 包含 BHID FROM TO SAMP ID 完全匹配的所有唯一元素 最終的 DataFrame 應該是這樣的——

BHID | FROM | TO | SAMP ID | *element 1* | *element2* | *element3*

我嘗試了以下方法:

FinalDF = pd.merge(DF1,DF2,DF3, on=['BHID','FROM','TO','SAMP ID'], how='inner')

這給了我一個錯誤 - ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all(). ValueError: The truth value of a DataFrame is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

請您協助正確的合並方法或加入方法。 這將不勝感激。 謝謝

您可以鏈接merge

cols = ['BHID','FROM','TO','SAMP ID']
out = DF1.merge(DF2, on=cols).merge(DF3, on=cols)

您也可以使用concat

out = pd.concat([DF1,DF2,DF3], axis = 0)[['BHID','FROM','TO','SAMP ID']]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM