假设我有一个看起来像这样的数据框:
df =
0 1 2
0 1.0 2.0 3.0
1 4.0 5.0 NaN
2 6.0 NaN NaN
然后可以使用df.fillna(method='ffill', axis=1)
获得:
0 1 2
0 1.0 2.0 3.0
1 4.0 5.0 5.0
2 6.0 6.0 6.0
即我转发填充行。但是,现在我有一个数据框,-1
而不是np.nan
. Pandas 具有replace
也可以使用的函数method='ffill'
,但replace()
不接受轴参数,因此要获得与上述相同的结果,我需要调用df.T.replace(-1, method='ffill').T
. 由于转置非常昂贵(特别是考虑到我正在处理数 GB 的数据帧),所以这不是一个选择。我怎样才能达到预期的结果?