Замените NaN значениями из X строк ранее или позже в панде. - PullRequest
0 голосов
/ 19 сентября 2018

У меня есть датафрейм, в котором каждая строка представляет день подряд, а столбец - общее потребление электроэнергии.Существуют некоторые значения NaN, в которых отсутствуют данные:

     ELECTRICITY
0    10
1    15
2    17
3    12
4    15
5    16
6    22
7    8
8    NaN
9    16
10   13

Поскольку потребление электроэнергии в этом образце в основном зависит от дня недели, я хочу заменить все NaN на значения из 7 строк ранее или позже.

Я проверил следующее безуспешно:

  1. fillna: только позволяет заменить определенным значением или непосредственно смежными значениями
  2. интерполировать: только позволяет мнезаменить средним числом непосредственно смежных значений
  3. replace: кажется, разрешает условные замены с установленными значениями

Спасибо за любую помощь.

1 Ответ

0 голосов
/ 19 сентября 2018

Используйте fillna и shift

df.fillna(df.shift(7))

    ELECTRICITY
0          10.0
1          15.0
2          17.0
3          12.0
4          15.0
5          16.0
6          22.0
7           8.0
8          15.0
9          16.0
10         13.0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...