小编Foj*_*ojo的帖子

水平(沿行)向前填充 Pandas 数据框,而不向前填充每行中的最后一个值

我有一个 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)

python numpy pandas

5
推荐指数
1
解决办法
1081
查看次数

标签 统计

numpy ×1

pandas ×1

python ×1