Python 如何获得由另一个字段分组的数据帧中的值之间的差异?

Python 如何获得由另一个字段分组的数据帧中的值之间的差异?,python,pandas,Python,Pandas,我有一个CSV的数据,我已经加载到一个数据框,我试图按摩:我想创建一个新的列,其中包含不同记录之间的差异,由另一个字段分组 这是我的密码: import pandas as pd import matplotlib.pyplot as plt rl = 'https://raw.githubusercontent.com/nytimes/covid-19-data/master/us-counties.csv' all_counties = pd.read_csv(url, dtype={&q

我有一个CSV的数据,我已经加载到一个数据框,我试图按摩:我想创建一个新的列,其中包含不同记录之间的差异,由另一个字段分组

这是我的密码:

import pandas as pd
import matplotlib.pyplot as plt

rl = 'https://raw.githubusercontent.com/nytimes/covid-19-data/master/us-counties.csv'
all_counties = pd.read_csv(url, dtype={"fips": str})
all_counties.date = pd.to_datetime(all_counties.date)
oregon = all_counties.loc[all_counties['state'] == 'Oregon']

oregon.set_index('date', inplace=True)
oregon.sort_values('county', inplace=True)

# This is not working; I was hoping to find the differences from one day to another on a per-county basis
oregon['delta'] = oregon.groupby(['state','county'])['cases'].shift(1, fill_value=0)
oregon.tail()
不幸的是,我得到的结果是,增量总是与案例相同

我是Pandas的新手,对Python相对缺乏经验,因此如果您能告诉我如何最好地阅读文档,我将获得额外的分数。

让我们试试看

oregon['delta']=oregon.groupby(['state','county'])['cases'].diff().fillna(0)

.shift
仅提供移位值。我想你会用的