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

如何基于DataFrame第三列偏移取值填充新增的第四列

解决方案

你要实现的是把第三列向下偏移1行的需求,直接用pandas内置的shift()方法即可完成,操作非常简单。

假设你的原DataFrame命名为df,分两种情况写代码:

  • 如果你知道第三列的列名,例如列名为col3,新增的第四列命名为col4:
df['col4'] = df['col3'].shift(periods=1)
  • 如果你要按位置取第三列(pandas列索引从0开始计数,第三列对应索引2):
df['col4'] = df.iloc[:, 2].shift(periods=1)

规则说明

  • shift(periods=1)参数表示把整列数据向下偏移1行,正好匹配你要求的「第四列第n行取第三列第n-1行值」的规则
  • 偏移后第四列的第一行自动填充空值,和你给出的示例中的N/A效果一致,不需要额外处理
  • 如果你需要把空值替换成其他自定义值,可以链式调用fillna()方法,示例:df['col4'] = df['col3'].shift(1).fillna('自定义值')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 00:45:04