所以我有一个看起来像这样的数据框:
#1 #2
1980-01-01 11.6985 126.0
1980-01-02 43.6431 134.0
1980-01-03 54.9089 130.0
1980-01-04 63.1225 126.0
1980-01-05 72.4399 120.0
我想要做的是将第一列的第一行(11.6985)向下移动1行,然后将第一列的最后一行(72.4399)移动到第一行第一列,如下所示:
#1 #2
1980-01-01 72.4399 126.0
1980-01-02 11.6985 134.0
1980-01-03 43.6431 130.0
1980-01-04 54.9089 126.0
1980-01-05 63.1225 120.0
我的想法是使用这些数据框来查找每个转移的R^2值,因此我需要使用所有数据,否则可能无法正常工作。我已经尝试使用 pandas.Dataframe.shift():
print(data)
#Output
1980-01-01 11.6985 126.0
1980-01-02 43.6431 134.0
1980-01-03 54.9089 130.0
1980-01-04 63.1225 126.0
1980-01-05 72.4399 120.0
print(data.shift(1,axis = 0))
1980-01-01 NaN NaN
1980-01-02 11.6985 126.0
1980-01-03 43.6431 134.0
1980-01-04 54.9089 130.0
1980-01-05 63.1225 126.0
所以它只是将两列向下移动,并且去掉了最后一行数据,这不是我想要的结果。有什么建议吗?
df['#1'] = np.roll(df['#1'], shift=1)
。 - Psidom