Pandas Forward Fill NA только между двумя точками и ничем иным - PullRequest
0 голосов
/ 28 июня 2018

Я хочу использовать пустые значения pandas forward fill только между двумя ненулевыми точками данных и ничем иным.

Например, у меня есть столбец с именем comments

Comments:
Hello World
NA
Hello World
NA 
Hello World
NA
NA
NA
NA

Вывод должен выглядеть так:

Hello World
Hello World
Hello World
Hello World
Hello World
NA
NA
NA
NA

1 Ответ

0 голосов
/ 28 июня 2018

Вы можете рассчитать последний действительный индекс и использовать ffill до этого индекса:

last = df['Comments'].last_valid_index()

df['Comments'].loc[:last] = df['Comments'].loc[:last].ffill()

print(df)

      Comments
0  Hello World
1  Hello World
2  Hello World
3  Hello World
4  Hello World
5          NaN
6          NaN
7          NaN
8          NaN
...