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

如何在Pandas中将列值填充至同列下一行直至下一个有效值

解决Pandas中列值向下填充至下一个有效值前的所有行

核心需求可以通过Pandas的**向前填充(forward fill)**功能直接实现,也就是ffill()方法,它会把每一个有效值向下填充,直到遇到下一个新的有效值为止。

示例代码

  1. 先构造模拟场景的测试数据:
import pandas as pd
import numpy as np

df = pd.DataFrame({
    'Target_Column': ['Value1', np.nan, np.nan, 'Value2', np.nan, 'Value3', np.nan, np.nan]
})
  1. 执行填充操作:
# 对目标列应用向前填充
df['Target_Column'] = df['Target_Column'].ffill()
  1. 最终结果:
Target_Column
0        Value1
1        Value1
2        Value1
3        Value2
4        Value2
5        Value3
6        Value3
7        Value3

特殊情况处理

如果你的列中空值不是NaN,而是空字符串'',需要先将其转换为NaN再执行填充:

# 替换空字符串为NaN,再向前填充
df['Target_Column'] = df['Target_Column'].replace('', np.nan).ffill()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 21:01:11