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

Pandas判断DataFrame值是否存在于另一个并生成匹配结果列

实现两DataFrame日期匹配拼接用户列的方法

核心思路是先对DF2按日期分组聚合,将同日期的用户拼接为单个字符串,再映射到DF1的日期列即可,有两种常用实现方式:

方法1:映射字典实现(代码更简洁)

# 构造日期到拼接后用户的映射字典
date_user_dict = df2.groupby('StartDate')['User'].apply('; '.join).to_dict()
# 映射生成DF1的User列
df1['User'] = df1['Dates'].map(date_user_dict)

# 可选:若需要空值替换为空字符串,补充以下代码
df1['User'] = df1['User'].fillna('')

方法2:合并实现(适合多字段匹配场景)

# 聚合DF2的同日期用户
df2_agg = df2.groupby('StartDate', as_index=False)['User'].agg('; '.join)
# 左连接合并到DF1
df1 = df1.merge(df2_agg, left_on='Dates', right_on='StartDate', how='left').drop('StartDate', axis=1)

两种方法最终输出的DF1均符合预期格式,未匹配到的日期User列默认值为NaN,可根据需求自行填充空值。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 01:36:05