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

如何从df_mtrs数据框提取2019-2022年连续存在的客户数据?

提取2019-2022年连续存在的客户数据

以下是基于pandas实现的具体步骤:

  1. 确保交易年份字段为整数类型(避免类型异常)
df_mtrs['trxyear'] = df_mtrs['trxyear'].astype(int)
  1. 筛选出2019至2022年的交易数据
year_range_df = df_mtrs[df_mtrs['trxyear'].isin([2019, 2020, 2021, 2022])]
  1. 按客户名称分组,筛选出覆盖全部四个年份的客户
# 分组后检查每个客户的年份集合是否包含所有目标年份
qualified_customers = year_range_df.groupby('customer_name')['trxyear'].agg(
    lambda x: set(x) == {2019, 2020, 2021, 2022}
).reset_index(name='qualified')

# 提取符合条件的客户名单
qualified_list = qualified_customers[qualified_customers['qualified']]['customer_name'].tolist()
  1. 从原数据框中提取这些客户的对应数据
# 提取客户的所有历史数据
final_df = df_mtrs[df_mtrs['customer_name'].isin(qualified_list)]

# 若仅需2019-2022年的数据,可使用:
# final_df = year_range_df[year_range_df['customer_name'].isin(qualified_list)]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 22:39:20