簡體   English   中英

熊貓根據第二個df中的值將列添加到df中

[英]Pandas add column to df based on values in a second df

我有兩個單獨的數據df1df2 ,兩個數據df2都包含一個id列,該id列鏈接它們之間的行。 df2具有df1不包含的group列。 我想做的是遍歷df1每個id並檢查它是否在df2然后是否要獲取group列值並將其放在df1中同名的新列下。 編寫一個循環函數最簡單還是在這里有我可以利用的熊貓技巧?

df1 = pd.DataFrame([[1, 'a'],
                    [2, 'b'],
                    [3, 'c']], columns=['id', 'attr'])
df2 = pd.DataFrame([[2, 'd'],
                    [3, 'e'],
                    [4, 'f']], columns=['id', 'group'])

df1.merge(df2, how='left')

在此處輸入圖片說明

您可以通過將兩個數據框合並到id列中來合並兩個數據框,然后僅保留所需的列:

df1 = merge(df1, df2, how='left', on='id')
df1.drop('unwanted_column',1)

暫無
暫無

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

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