我有一些时间序列数据。我需要为某些计算填充空值。我知道我可以使用fillna()和method='ffill'来将空值插补为前一个值。
df.fillna(method='ffill')
我还知道可以使用np.where()和.shift(7)获取特定列的前几周的值:
df['col1'] = np.where(df.col1.isnull(), df.col1.shift(7), df.col1)
有没有办法用.fillna()一次对整个 Dataframe 执行此操作?
b4wnujal1#
如果我没理解错您的问题,您希望用7天前的值填充NaN。在这种情况下,只需使用
df = df.fillna(df.shift(7))
其将一次性地对整个 Dataframe 起作用。
1条答案
按热度按时间b4wnujal1#
如果我没理解错您的问题,您希望用7天前的值填充NaN。
在这种情况下,只需使用
其将一次性地对整个 Dataframe 起作用。