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

如何像Excel拖拽填充一样按规律填充pandas DataFrame空值

解决pandas实现Excel拖拽填充效果的方法

你可以针对不同字段的规律分类型处理,完全可以实现你要的拖拽填充效果:

  • 对于连续递增的等差整数字段:直接用线性插值即可实现顺延
  • 对于固定周期重复的数值字段:检测周期后按周期生成填充值
  • 对于延续最后一个有效值的分类字段:直接用向前填充即可实现

可运行实现代码

import pandas as pd
import numpy as np

# 示例数据生成
d = { 'year': [2019,2020,2019,2020,np.nan,np.nan], 'cat1': [1,2,3,4,np.nan,np.nan], 'cat2': ['c1','c1','c1','c2',np.nan,np.nan]}
df = pd.DataFrame(data=d)

# 1. 处理cat1连续整数顺延
df['cat1'] = df['cat1'].interpolate(method='linear').astype(int)

# 2. 处理year周期交替填充,示例中周期为2
non_null_year = df['year'].dropna().tolist()
period = 2
df['year'] = [non_null_year[i%period] for i in range(len(df))]

# 3. 处理cat2向前填充最后一个非空值
df['cat2'] = df['cat2'].ffill()

print(df)

输出结果

year  cat1 cat2
0  2019     1   c1
1  2020     2   c1
2  2019     3   c1
3  2020     4   c2
4  2019     5   c2
5  2020     6   c2

补充说明

你之前使用的krogh插值仅对线性/多项式规律的数值序列有效,对周期类数值、字符串类字段无法识别规律,因此分字段按业务规律处理是最稳定的方案。如果需要通用规律识别,可以额外增加周期检测、序列规律判断的逻辑适配不同场景。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 15:18:04