擅长:python、mysql、java
<p>您可以按销售代表分组,并按行排序。然后将数据集合并到一起。在</p>
<pre><code>import pandas as pd
df = pd.DataFrame({
'Date': ['01-01-2018', '01-01-2018', '01-01-2018', '01-02-2018', '01-02-2018', '01-02-2018'],
'SalesRep': ['Jakob', 'Adomas', 'Thomas', 'Jakob', 'Adomas', 'Thomas',],
'itemA': [5, 10, 15, 50, 100, 150],
'itemB': [10, 20, 30, 30, 40, 65]})
df_diff = df.groupby('SalesRep').diff().fillna(0).astype(int)
df.loc[:, ['itemA', 'itemB']] = df_diff.where(df_diff, df.loc[:, ['itemA', 'itemB']])
df
# returns:
Date SalesRep itemA itemB
0 01-01-2018 Jakob 5 10
1 01-01-2018 Adomas 10 20
2 01-01-2018 Thomas 15 30
3 01-02-2018 Jakob 45 20
4 01-02-2018 Adomas 90 20
5 01-02-2018 Thomas 135 35
</code></pre>