我有一个 Pandas 数据框,我想水平转发填充,但我不想转发填充超过每行中的最后一个条目。这是一些已停产的产品的时间序列定价数据,因此我不希望将记录的最后一个值向前填充到当前值。
FWDFILL.apply(lambda series: series.iloc[:,series.last_valid_index()].ffill(axis=1))
Run Code Online (Sandbox Code Playgroud)
^我包含的代码做了我想要的,但它是垂直的。这可能可以帮助人们作为起点。
>>> print(FWDFILL)
1 1 NaN NaN 2 NaN
2 NaN 1 NaN 5 NaN
3 NaN 3 1 NaN NaN
4 NaN NaN NaN NaN NaN
5 NaN 5 NaN NaN 1
Run Code Online (Sandbox Code Playgroud)
期望输出:
1 1 1 1 2 NaN
2 NaN 1 1 5 NaN
3 NaN 3 1 NaN NaN
4 NaN NaN NaN NaN NaN
5 NaN 5 5 5 1
Run Code Online (Sandbox Code Playgroud)