如何移动数据框的日期?

Dhe*_*raj 3 python indexing dataframe pandas

我有一个像这样的数据框:

                KWH  
Timestamp            
2017-04-02  1588.06  
2017-04-03  1555.54  
2017-04-04  1604.32  
2017-04-05  1634.13  
2017-04-06  1617.87  
2017-04-07  1598.90  
2017-04-08  1596.19  
2017-04-09  1607.03  
2017-04-10  1601.61  
2017-04-11  1547.41
Run Code Online (Sandbox Code Playgroud)

我试图将索引移动 -1 但它抛出一个错误。

我试过这个:

(df.shift(-1, freq = "D"))
Run Code Online (Sandbox Code Playgroud)

我得到的错误:

NotImplementedError:不支持类型索引

任何帮助,将不胜感激。

jez*_*ael 5

我认为你需要DatetimeIndexby to_datetime,因为Timestamp也是index

df.index = pd.to_datetime(df.index)
df1 = df.shift(-1, freq = "D")
print (df1)
                KWH
Timestamp          
2017-04-01  1588.06
2017-04-02  1555.54
2017-04-03  1604.32
2017-04-04  1634.13
2017-04-05  1617.87
2017-04-06  1598.90
2017-04-07  1596.19
2017-04-08  1607.03
2017-04-09  1601.61
2017-04-10  1547.41
Run Code Online (Sandbox Code Playgroud)