Python 从列中给定相同值的两个数据帧中减去值

Python 从列中给定相同值的两个数据帧中减去值,python,pandas,dataframe,Python,Pandas,Dataframe,我目前有两个数据帧,列数和列名相同。两个数据帧中的两列是“Time”和“Trip_ID”。在这种情况下,如果行具有相同的Trip_ID,我想减去两个数据帧之间的时间值 范例- Time Trip_ID 15 X 20 Y 25 Z Time Trip_ID 35 Z 40 Y 65 X 我想在一行中列出所有时间差,在本例中,这些时间差看起来像(50,20,10): (df2.set_index('Trip_ID')- df.set_in

我目前有两个数据帧,列数和列名相同。两个数据帧中的两列是“Time”和“Trip_ID”。在这种情况下,如果行具有相同的Trip_ID,我想减去两个数据帧之间的时间值

范例-

Time   Trip_ID
15     X
20     Y
25     Z

Time   Trip_ID
35     Z
40     Y
65     X
我想在一行中列出所有时间差,在本例中,这些时间差看起来像(50,20,10)

(df2.set_index('Trip_ID')- df.set_index('Trip_ID')).squeeze().tolist()
输出:

Out[14]: [50, 20, 10]

df1.set_index('Trip_ID').sub(df2.set_index('Trip_ID')).reset_index()
您可以使用@QuangHoang sol,您可以编辑以将df2保留在左侧:)