You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pandas DataFrame各行NaN数量不一致时如何按行执行ffill填充

实现该需求只需要调用pandas内置的前向填充方法,指定按行维度填充即可,具体代码如下:

步骤1:构造示例测试数据

import pandas as pd
import numpy as np

df = pd.DataFrame(
    data=[
        [1, 2, 3, np.nan, np.nan, np.nan],
        [1, 2, 3, 4, np.nan, np.nan],
        [1, 2, 3, 4, 5, 6]
    ],
    columns=['A', 'B', 'C', 'D', 'E', 'F']
)

步骤2:按行执行前向填充

核心代码仅需一行:

df = df.ffill(axis=1)

这里的axis=1指定填充方向为横向(按行操作),会自动把每行中左侧的非空值向右填充后续的NaN值,执行后得到的结果和你要求的目标完全一致。

如果使用的是较早版本的pandas,也可以用fillna的等效写法:

df = df.fillna(method='ffill', axis=1)

内容的提问来源于stack exchange,提问作者Cranjis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 00:36:08