我尝试编写以下代码,但收到错误消息:" ValueError:无法在没有频率的情况下移位。" 我不知道如何解决它?我试图谷歌上的错误信息,但无法找到任何类似于我的情况。
df是一个python pandas数据框,我想为其创建显示每日更改的新列。代码如下所示。如何修复代码以避免值错误?
for column_names in df:
df[column_names+'%-daily'] =df[column_names].pct_change(freq=1).fillna(0)
答案 0 :(得分:0)
问题是我把日期作为索引。因为只有工作日显示delta变得不正确。当我改为期间。
for column_names in list(df.columns.values):
df[column_names+'%-daily'] =df[column_names].pct_change(periods=1).fillna(0)