簡體   English   中英

根據來自另一個數據框的 2 個條件創建新的數據框列

[英]Create new dataframe column based on 2 criteria from another dataframe

我有以下數據框:

df=pd.DataFrame({'Name':['JOHN','ALLEN','BOB','NIKI','CHARLIE','CHANG'],
              'Age':[35,42,63,29,47,51],
              'Salary_in_1000':[100,93,78,120,64,115],
             'FT_Team':['STEELERS','SEAHAWKS','FALCONS','FALCONS','PATRIOTS','STEELERS']})

df輸出:

-   Name    Age Salary_in_1000  FT_Team
0   JOHN    35  100 STEELERS
1   ALLEN   42  93  SEAHAWKS
2   BOB 63  78  FALCONS
3   NIKI    29  120 FALCONS
4   CHARLIE 47  64  PATRIOTS
5   CHANG   51  115 STEELERS

我正在嘗試完成的數據框:

df1=pd.DataFrame({'Name':['JOHN','ALLEN','BOB','NIKI','CHARLIE','CHANG'],
                  'Age':[35,42,63,29,47,51],})

df1 輸出:

  - Name    Age 
    0   JOHN    35  
    1   ALLEN   42  
    2   BOB 63  78  
    3   NIKI    29  
    4   CHARLIE 47  
    5   CHANG   51

我想一個新列添加到df1引用['FT_Team']df在基於'Name''Age'df1

我相信新代碼應該看起來像一個 .map; 但是,對於多個參數的參數是什么,我完全感到困惑。

df1['FT_Team] = 

最終輸出:

 -  Name    Age FT_Team
    0   JOHN    35  STEELERS
    1   ALLEN   42  SEAHAWKS
    2   BOB 63  FALCONS
    3   NIKI    29  FALCONS
    4   CHARLIE 47  PATRIOTS
    5   CHANG   51  STEELERS

最終,我想根據df1 Name AND Age 匹配來自df的足球隊

Per Quang Hoang:

df1=df1.merge(df[['Name','Age','FT_Team']], on=['Name','Age'], how='left')

暫無
暫無

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

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