簡體   English   中英

如何在其他dataframe的基礎上在dataframe中添加新列?

[英]How to add new column in dataframe based on the other dataframe?

嗨,我有 2 個數據框,但兩者都不相同。 我必須根據第二個更新一個。

示例:df1:

Region  Sub_Region  Run_Date    Status   Reason
ASPAC   CRM         2022-01-11  Success
ASPAC   Genesys     2022-01-11  Failed
LATAM   CRM         2022-01-11  Success

df2:

Region   Sub_Region   Max_Load_Date
NA       CRM          2021-08-12
ASPAC    CRM          2021-03-15
LATAM    CRM          2021-10-11
NA       Genesys      2021-12-18
ASPAC    Genesys      2021-11-18
LATAM    Genesys      2021-04-16

在最終 Output 中:

Region  Sub_Region  Run_Date    Status   Reason  Max_Load_Date
ASPAC   CRM         2022-01-11  Success          2021-03-15
ASPAC   Genesys     2022-01-11  Failed
LATAM   CRM         2022-01-11  Success          2021-10-11

df1 將在 status = 'Success' 時更新

merge后過濾掉您的 dataframe :

df1['Max_Load_Date'] = df1.merge(df2, on=['Region', 'Sub_Region'], how='left') \
                          .query("Status == 'Success'")['Max_Load_Date']
print(df)

# Output
  Region Sub_Region    Run_Date   Status  Reason Max_Load_Date
0  ASPAC        CRM  2022-01-11  Success     NaN    2021-03-15
1  ASPAC    Genesys  2022-01-11   Failed     NaN           NaN
2  LATAM        CRM  2022-01-11  Success     NaN    2021-10-11

暫無
暫無

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

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