我有一个分组的系列,我想转移并添加到DF中。分组后的系列如下:
month day hour_dep origin
1 1 5 LGA 1
6 EWR 4
JFK 2
LGA 4
7 EWR 4
当我移动这个系列(test_series.shift(1))时我得到
month day hour_dep origin
1 1 5 LGA NaN
6 EWR 1.0
JFK 4.0
LGA 2.0
7 EWR 4.0
我想要什么:
month day hour_dep origin
1 1 5 LGA NaN
6 EWR NaN
JFK NaN
LGA 1.0
7 EWR 4.0
即将所有观察值从前一个小时移到下一小时。
感谢您的帮助!
一些代码可以轻松地重现此数据结构:
np.random.seed(2)
test_df = pd.DataFrame(np.random.randint(0, 5, size=[2000,5]), columns=['Month', 'Day', 'Hour', 'Type', 'Test'])
test_series = test_df.groupby(['Month', 'Day', 'Hour', 'Type']).sum().head(10)['Test']
print(test_series)
print(test_series.shift(1)) # Observations in hour 1 do not correspond to the observations in hour 0. Observations in hour 0 should be NaN.