如何从数据框提取数据并与另一个数据框联接

我有两个数据帧df和df1。我想同时加入两个数据框并以不同的方式获取输出

df
City    Date        Wind    Temperature
London  5/11/2019   14        5
London  6/11/2019   28        6
London  7/11/2019   10        5
berlin  5/11/2019   23        12
berlin  6/11/2019   24        12
berlin  7/11/2019   16        16
Munich  5/11/2019   12        10
Munich  6/11/2019   33        11
Munich  7/11/2019   44        13
Paris   5/11/2019   27        6
Paris   6/11/2019   16        7
Paris   7/11/2019   14        8
Paris   8/11/2019   10        6

df1
ID     City   Delivery_Date Provider
1456223 London  7/11/2019   Amazon
1456345 London  6/11/2019   Amazon
2345623 Paris   8/11/2019   Walmart
1287456 Paris   7/11/2019   Amazon
4568971 Munich  7/11/2019   Amazon
3456789 berlin  6/11/2019   Walmart

输出1

ID  City    Delivery_Date   Wind    Temperature
1456223 London  7/11/2019   10        5
1456345 London  6/11/2019   28        6
2345623 Paris   8/11/2019   10        6
1287456 Paris   7/11/2019   14        8
4568971 Munich  7/11/2019   44       13

输出2

此处应显示该项目的天气详细信息,直到达到交货日期为止

ID  City    Delivery_Date   Wind    Temperature
1456223 London  5/11/2019   14  5
1456223 London  6/11/2019   28  6
1456223 London  7/11/2019   10  5
1287456 Paris   5/11/2019   27  6
1287456 Paris   6/11/2019   16  7
1287456 Paris   7/11/2019   14  8

这怎么办?

anye417 回答:如何从数据框提取数据并与另一个数据框联接

将DF和DF1视为数据帧,如上所述。

import pandas as pd 
output1 = pd.merge(DF1,DF,left_on = ['City','Date'],right_on = ['City','Delivery_Date'],how='inner' ) 
res1 = df1.groupby('City').max() [['Delivery_Date']]
result1 = pd.merge(df,res1,on ='City')
output2 = result1 [result1['Date'] <= result1['Delivery_Date']]

enter image description here

,

您可以使用df.merge

import pandas as pd
df.merge(df1[['City','Delivery_Date','ID']],how='inner')
本文链接:https://www.f2er.com/3162206.html

大家都在问