ฉันไม่สามารถทราบวิธีการรวม DataFrames แพนด้า 2 ตัวเข้ากับเงื่อนไขบางประการได้
ฉันมีสิ่งนี้:
import pandas as pd
df1 = pd.DataFrame({'Name': ['A', 'A', 'A', 'B' ,'B' ,'B'],
'Date': ['10/15/2019', '10/16/2019', '10/17/2019', '10/15/2019', '10/16/2019', '10/17/2019'],
'Value 1': [101, 102, 103, 201, 202, 203],
'Value 2': ['A1', 'A2', 'A3', 'B1', 'B2', 'B3']})
df2 = pd.DataFrame({'Name': ['A', 'A', 'B', 'B' ,'C'],
'Date': ['10/14/2019', '10/15/2019', '10/13/2019', '10/18/2019', '10/18/2019'],
'Value 3': [2, 2, 22, 44, 222]})
ฉันจำเป็นต้องได้รับสิ่งนี้
ฉันต้องการรวมเฉพาะชื่อที่มีอยู่ใน df1 แต่เพิ่มวันที่ที่มีอยู่ใน df2 อย่างไรก็ตาม วันที่เหล่านั้นควรมากกว่า 10/13/2019
ที่ใกล้ที่สุดที่ฉันสามารถทำได้คือ
df_m = pd.merge(df1, df2, how='outer', left_on=['Name', 'Date'], right_on=['Name', 'Date'], sort=True)
แต่รวมถึงทุกสิ่ง ('C' จาก df2 - ฉันไม่ต้องการมันและวันที่ 13/10/2019 สำหรับ 'B' - ฉันก็ไม่ต้องการมันเช่นกัน)
ฉันขอขอบคุณความช่วยเหลือใด ๆ
แก้ไขแล้ว: เราสามารถยกเลิกเงื่อนไขของวันที่ที่มากกว่า 10/13/2019 ได้ - ฉันคิดออกโดยเพิ่งสร้าง df2_mod อื่นโดยที่ฉันไม่รวมวันที่ที่ฉันไม่ต้องการ อย่างไรก็ตาม บางวันที่ที่มีอยู่ใน df2_mod ไม่อยู่ใน df1 และฉันต้องรวมเข้ากับค่า 3 อย่างไรก็ตาม ฉันไม่ต้องการชื่อจาก df2 ไปเป็น df1 ที่ไม่มีอยู่ใน df1