Цепочка bfill
вызов:
df.ffill().bfill()
a b
0 2.0 3.0
1 2.0 3.0
2 2.0 3.0
3 2.0 3.0
Чтобы разрешить пандам опускаться до int
с, если возможно, используйте
df.ffill().bfill(downcast='infer')
a b
0 2 3
1 2 3
2 2 3
3 2 3
Другой вариантравно fillna
с max
.
df.fillna(df.max(), downcast='infer')
a b
0 2 3
1 2 3
2 2 3
3 2 3
max
игнорирует NaN, поэтому является хорошей альтернативой.