Pandas 按行分组数据帧并比较值

Pandas 按行分组数据帧并比较值,pandas,dataframe,pandas-groupby,Pandas,Dataframe,Pandas Groupby,我有两个数据帧。 旧的\u结果= date | location | value | trial_number ----------+----------+-------+------------- 1-1-2001 | USA | 3 | 10 1-2-2001 | USA | 4 | 20 1-1-2001 | China | 1 | 30 1-2-2001 | China | 2 | 40 新结果= d

我有两个数据帧。
旧的\u结果
=

date      | location | value | trial_number
----------+----------+-------+-------------
1-1-2001  | USA      | 3     | 10 
1-2-2001  | USA      | 4     | 20 
1-1-2001  | China    | 1     | 30
1-2-2001  | China    | 2     | 40
新结果
=

date      | location | value |trial_number
----------+----------+-------+-------------
1-1-2001  | China    | 10    | 1
1-2-2001  | China    | 100   | 2
1-1-2001  | USA      | 1000  | 3
1-2-2001  | USA      | 10000 | 4
1-1-2001  | USA      | 5     | 5
1-2-2001  | USA      | 50    | 6
  • 注意:不保证此数据帧中的顺序,并且数据帧中存在重复值
我想在名为
diff
new_results
数据框中添加一列,用于比较给定日期/位置组合的新旧值。因此,最终结果应该如下所示:

date      | location | value | diff                | trial_number
----------+----------+-------+---------------------+-------------
1-1-2001  | China    | 10    | 9     # 10 - 1      | 1
1-2-2001  | China    | 100   | 98    # 100 - 2     | 2
1-1-2001  | USA      | 1000  | 997   # 1000 - 3    | 3
1-2-2001  | USA      | 10000 | 9996  # 1000 - 4    | 4
1-1-2001  | USA      | 1000  | 2   # 5 - 3         | 5
1-2-2001  | USA      | 10000 | 46  # 50 - 4        | 6

我知道如何使用
groupby
创建数据帧组,但我不知道如何比较groupby,并使用结果修改初始数据帧。

new_result['diff']=new_result['value']-old_results['value']
没有顺序保证,这仍然有效吗?(更新问题以反映这一点)
new_result['diff']=new_result['value']-old_results['value']
无法保证顺序,这仍然有效吗?(更新问题以反映这一点)