pyspark.pandas.groupby.GroupBy.shift#
- GroupBy.shift(periods=1, fill_value=None)[source]#
- Shift each group by periods observations. - Parameters
- periodsinteger, default 1
- number of periods to shift 
- fill_valueoptional
 
- Returns
- Series or DataFrame
- Object shifted within each group. 
 
 - Examples - >>> df = ps.DataFrame({ ... 'a': [1, 1, 1, 2, 2, 2, 3, 3, 3], ... 'b': [1, 2, 2, 2, 3, 3, 3, 4, 4]}, columns=['a', 'b']) >>> df a b 0 1 1 1 1 2 2 1 2 3 2 2 4 2 3 5 2 3 6 3 3 7 3 4 8 3 4 - >>> df.groupby('a').shift().sort_index() b 0 NaN 1 1.0 2 2.0 3 NaN 4 2.0 5 3.0 6 NaN 7 3.0 8 4.0 - >>> df.groupby('a').shift(periods=-1, fill_value=0).sort_index() b 0 2 1 2 2 0 3 3 4 3 5 0 6 4 7 4 8 0