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

如何用Pandas查找与特定产品'SWE'共同购买的高频产品?

解决与'SWE'共同购买的产品统计问题

操作步骤:

  • 第一步:提取所有购买过'SWE'的销售发票ID
    # 精确匹配产品'SWE',如果是产品名称包含'SWE',就把==换成.str.contains('SWE')
    invoices_with_swe = df[df['product'] == 'SWE']['sales_invoice'].unique()
    
  • 第二步:筛选这些发票中除'SWE'外的所有产品
    co_purchased_products = df[
        df['sales_invoice'].isin(invoices_with_swe) 
        & (df['product'] != 'SWE')
    ]
    
  • 第三步:统计共同购买产品的频次,取最常见的
    # 这里取前5个最常共同购买的产品,可根据需求修改head()里的数字
    top_co_products = co_purchased_products['product'].value_counts().head(5)
    print(top_co_products)
    

原代码问题说明:

你之前的groupby(df['product'].str.contains('SWE'))只是把数据按「是否包含SWE」分成两组,仅拿到了对应发票列表,但没有建立发票和其他产品的关联。上面的步骤先锁定买过SWE的发票池,再从池子里捞出其他产品,就能精准统计共同购买的情况。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 20:25:29