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

如何为DataFrame添加字符串值最近一次出现的日期列

解决方案

你可以通过Pandas的groupby()结合shift()方法快速实现需求,具体步骤如下:

  1. 构造示例DataFrame(如果已有可跳过):
import pandas as pd

data = {
    'date': ['June 1', 'June 2', 'June 3', 'June 4', 'June 5'],
    'letter': ['A', 'B', 'C', 'B', 'A']
}
df = pd.DataFrame(data)
  1. 添加last_date列:
    通过按letter分组,对每组的date列执行向下偏移1位的操作,就能得到每个字母上一次出现的日期:
df['last_date'] = df.groupby('letter')['date'].shift(1)
  1. (可选)将空值替换为空字符串:
    如果希望空值显示为空白而非默认的NaN,可以补充这一步:
df['last_date'] = df['last_date'].fillna('')

最终得到的结果如下:

dateletterlast_date
June 1A
June 2B
June 3C
June 4BJune 2
June 5AJune 1

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 17:32:43