Python 追加新列,从不同数据帧(不同长度)中的列中标识datetime的匹配日期

Python 追加新列,从不同数据帧(不同长度)中的列中标识datetime的匹配日期,python,dataframe,compare,match,Python,Dataframe,Compare,Match,我正在尝试向df2添加一个新列,以标识两个dataframe日期列中的日期之间的匹配。如果日期匹配(时间对匹配不重要),请在“匹配”列中打印“1”。下面是我不知道如何实现的两个数据帧和所需的输出 df1: date 0 2019-05-03 12:22:03 1 2019-05-06 13:56:00 2 2019-05-08 11:25:53 3 2019-05-09 06:11:14 4

我正在尝试向df2添加一个新列,以标识两个dataframe日期列中的日期之间的匹配。如果日期匹配(时间对匹配不重要),请在“匹配”列中打印“1”。下面是我不知道如何实现的两个数据帧和所需的输出

    df1:
              date          
    0  2019-05-03 12:22:03
    1  2019-05-06 13:56:00
    2  2019-05-08 11:25:53
    3  2019-05-09 06:11:14
    4  2019-05-13 23:36:18

    df2:
               date         Location
    0   2019-05-09 12:00:00 Area_A
    1   2019-05-10 14:00:00 Area_B
    2   2019-05-11 13:00:00 Area_C
    3   2019-05-12 11:00:00 Area_D
    4   2019-05-13 12:00:00 Area_A
    5   2019-05-14 14:00:00 Area_C
    6   2019-05-15 12:00:00 Area_B
    7   2019-05-16 12:00:00 Area_A
    8   2019-05-17 13:00:00 Area_A
    9   2019-05-18 18:00:00 Area_B

    Desired output df2:
                date            Location   Match
    0      2019-05-09 12:00:00  Area_A      1
    1      2019-05-10 14:00:00  Area_B      
    2      2019-05-11 13:00:00  Area_C      
    3      2019-05-12 11:00:00  Area_D      
    4      2019-05-13 12:00:00  Area_A      1
    5      2019-05-14 14:00:00  Area_C      
    6      2019-05-15 12:00:00  Area_B      
    7      2019-05-16 12:00:00  Area_A      
    8      2019-05-17 13:00:00  Area_A      
    9      2019-05-18 18:00:00  Area_B      

在两个dfs中创建另一列“_date”,该列只有日期,没有时间部分

df1["_dates"] = column with only dates (may be df1['dates'].dt.date)
df2["_dates"] = column with only dates (may be df2['dates'].dt.date)
df1["Match"] = 1
现在在“\u日期”上合并这两个数据帧


感谢您在这方面的指导。对于第一部分,我使用了
df1[“_dates”]=pd.to_datetime(df1['dates']].dt.date
df2[“_dates”]=pd.to_datetime(df2['dates'].dt.date
但是,我想让df2'date'列回到列位置0,输出已经将该列移动到位置2如果列从左到右的顺序是A、B,然后他们可以按df=df[[B,C,A]]洗牌,改变顺序比我想象的要容易得多。谢谢
pd.merge(df1,df2,left_on='_dates',right_on='_dates',how='right')