Python Forum
Combine groupby() and shift() in pandas
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Combine groupby() and shift() in pandas
#1
Hi,
I have a following issue. I need to compute lagged means per groups in my dataframe. See following example:

import pandas as pd

df = pd.DataFrame(data={ 'name':["a","a","a","b","b","c" ] , 'value':[5,4,3,1,2,1] , 'round':[1,2,3,1,2,1 ]})
Desired output is:

df = pd.DataFrame(data={ 'name':["a","a","a","b","b","c" ] , 'value':[5,4,3,1,2,1] , 'round':[1,2,3,1,2,1], 'mean_per_round':[NaN,5,4.5,NaN,1.5,NaN]})
I tried this, but it shifts all values, not only within a group:

df['mean_per_round'] = df.groupby(['name'])['value'].expanding().mean().shift(1).values
Any suggestions, please? Thanks a lot.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  pandas.to_datetime: Combine data from 2 columns ju21878436312 1 2,448 Feb-20-2021, 08:25 PM
Last Post: perfringo
  Remove extra count columns created by pandas groupby spyf8 1 2,717 Feb-10-2021, 09:19 AM
Last Post: Naheed
  How to shift data frame rows of specified column Mekala 0 1,890 Jul-21-2020, 02:42 PM
Last Post: Mekala
  Pandas + Groupby + Filter unique values JosepMaria 1 2,868 Jun-15-2020, 08:15 AM
Last Post: JosepMaria
  python pandas: diff between 2 dates in a groupby bluedragon 0 3,275 Mar-25-2020, 04:18 PM
Last Post: bluedragon
  Using shift to compute the percent change in a time series new_to_python 6 4,117 Mar-03-2020, 07:50 PM
Last Post: new_to_python
  itertuples, datetime, pandas, groupby, in range karlito 0 2,457 Nov-29-2019, 11:35 AM
Last Post: karlito
  Groupby in pandas with conditional - add and subtract rregorr 2 6,950 Jul-12-2019, 05:17 PM
Last Post: rregorr
  Pandas segmenting groupby average brocq_18 0 2,433 Jul-11-2018, 10:54 AM
Last Post: brocq_18
  Pandas Shift Column shaq 0 3,387 Mar-08-2018, 12:13 AM
Last Post: shaq

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020