
电商用户行为漏斗与CRO转化率优化分析一、项目概述电商用户行为漏斗与CRO转化率优化分析E-Commerce Funnel CRO是一套面向电商运营的数据分析平台覆盖从用户访问到最终购买的完整漏斗链路提供多维诊断、统计检验、PIE 优先级矩阵与 XGBoost 购买预测等能力帮助运营团队精准定位转化瓶颈并制定优化策略。二、核心功能1. 漏斗分析功能说明页面漏斗首页 → 列表页 → 详情页 → 购物车 → 结算页各环节覆盖率与跨步转化率事件漏斗浏览 → 点击 → 加购 → 购买行为级转化分析环节损失量化各环节流失会话数、流失率、预估损失金额基于客单价 AOV月度趋势按月追踪会话量、转化率、平均停留时长周末/工作日对比周末与工作日转化率差异对比24h 时段分布各小时段转化率分布识别高峰与低谷2. 多维诊断维度分析内容渠道Organic / Paid Search / Social / Email / Direct 各渠道转化率与流量占比设备Desktop / Mobile / Tablet 各设备转化率与流量占比国家US / UK / IN / BR / CA 各国转化率、平均时长忠诚度Bronze / Silver / Gold / Platinum 各等级转化率、平均消费新老用户基于 loyalty_tier 划分新老用户对比转化率、页面深度、客单价时长分桶按停留时长60s / 60-180s / 180-420s / 420s分桶转化率渠道×设备交叉渠道与设备的交叉转化率矩阵流失矩阵渠道 × 流失环节的流失率热力图3. PIE 优先级矩阵基于Potential潜力× Importance重要性× Ease容易度三维度对各漏斗环节打分排序Potential该环节损失金额占总损失比例Importance该环节到达会话数占总会话比例Ease基于真实流失率的百分位排名推导流失率越高 改善空间越大 Ease 越高所有指标均从真实数据动态计算无硬编码兜底。4. 统计检验对渠道、设备、忠诚度、国家等维度与购买行为进行卡方独立性检验χ² testBonferroni 校正多重比较Cramér’s V 效应量分析强 / 中 / 弱5. 机器学习 — XGBoost 购买预测能力说明特征工程时间特征小时/星期/月份、页面深度、行为深度、时长分桶、交互特征模型XGBoost 二分类scale_pos_weight 处理样本不均衡评估Accuracy / AUC / F1 / Precision / Recall 5 折交叉验证单条预测输入会话特征输出购买概率与风险等级高/中/低转化批量预测从数据集采样预测输出概率与真实标签对照可视化ROC 曲线、混淆矩阵、特征重要性 Top 156. Web 可视化仪表板基于 Flask ECharts 构建的交互式仪表板页面功能数据概览KPI 卡片总会话/购买/转化率/收入/退款率/瓶颈环节 漏斗图 趋势图策略分析PIE 矩阵 损失瀑布 流失矩阵 统计检验用户分析渠道/设备/国家/忠诚度/新老用户/时段分布转化预测单条预测表单 批量预测结果 ROC/混淆矩阵/特征重要性7. 数据生成引擎当无原始数据时系统内置合成数据生成器产出具备真实业务逻辑特征的模拟数据5,000 客户/200 产品/20 营销活动/20,000 会话漏斗概率由FUNNEL_DIFFICULTY相对难度 渠道/设备/忠诚度修饰系数动态推导时长修饰停留越久转化率越高0.6x ~ 2.2x收入含噪声避免目标泄露8. 真实数据支持Retailrocket系统支持基于真实电商行为数据运行当前已适配 Retailrocket E-commerce Dataset项目模拟数据真实数据Retailrocket数据来源合成数据生成器Kaggle 真实电商行为数据集事件数~20,000 会话275 万条原始事件采样 10 万会话用户数5,000140 万原始用户采样 10 万转化率人为设定真实转化率view→addtocart 2.6%模型 AUC~0.500.9933操作方式train.sh自动手动下载 手动转换见下方使用方式手动从 Kaggle 下载数据集 zip 并放到code/real_data/目录解压后执行python real_data/_inspect_retailrocket.py检查数据执行python real_data/retailrocket_adapter.py转换数据转换产物自动写入code/data/和code/output/后续正常执行train.sh详见code/real_data/README.md完整操作指南。所有下载、检查、转换的代码均在real_data/目录内不污染项目业务代码。三、API 接口一览漏斗分析 API端点方法说明/api/funnel/overviewGET概览 KPI 页面漏斗 事件漏斗/api/funnel/channelGET渠道转化率分析/api/funnel/deviceGET设备转化率分析/api/funnel/countryGET国家转化率分析/api/funnel/loyaltyGET忠诚度转化率分析/api/funnel/new_returningGET新老用户对比/api/funnel/durationGET时长分桶转化率/api/funnel/weekendGET周末/工作日对比/api/funnel/hourlyGET24h 时段转化率/api/funnel/channel_deviceGET渠道×设备交叉/api/funnel/lossGET环节损失量化/api/funnel/churnGET流失矩阵/api/funnel/trendGET月度趋势/api/funnel/pieGETPIE 优先级矩阵/api/funnel/statsGET统计检验模型 API端点方法说明/api/model/trainPOST触发模型训练/api/model/metricsGET获取模型评估指标/api/model/predictPOST单条会话预测/api/model/predict_batchPOST批量预测/api/model/feature_importanceGET特征重要性/api/model/rocGETROC 曲线数据/api/model/confusion_matrixGET混淆矩阵系统 API端点方法说明/api/analysis/runPOST运行完整分析/api/analysis/statusGET数据/模型就绪状态/api/db/initPOST初始化数据库/api/db/statusGET数据库表与行数四、目录结构ecommerce_funnel-main/ │ ├── code/ # 项目核心代码自包含可独立运行 │ │ │ ├── app.py # 主入口generate / init / train / serve / all │ ├── requirements.txt # Python 3.12 依赖清单 │ ├── mac_run.sh # macOS 一键启动脚本安装依赖 启动服务 │ ├── train.sh # macOS 模型训练脚本环境准备 数据生成 训练 │ ├── window_run.bat # Windows 一键启动脚本 │ │ │ ├── analysis/ # 数据分析模块 │ │ ├── __init__.py # 模块初始化 │ │ ├── data_generator.py # 合成数据生成引擎 │ │ └── funnel.py # 漏斗分析 多维诊断 PIE 统计检验 │ │ │ ├── real_data/ # 真实数据集独立模块不污染业务代码 │ │ ├── README.md # 真实数据操作指南下载/解压/检查/转换全流程 │ │ ├── _inspect_retailrocket.py # Retailrocket 数据完整性检查脚本 │ │ ├── retailrocket_adapter.py # Retailrocket → 项目格式转换脚本 │ │ ├── ecommerce-dataset.zip # Kaggle 下载的压缩包需手动下载已 gitignore │ │ ├── events.csv # 解压后的核心行为数据90 MB已 gitignore │ │ ├── category_tree.csv # 解压后的品类树14 KB已 gitignore │ │ ├── item_properties_part1.csv # 解压后的商品属性462 MB已 gitignore │ │ └── item_properties_part2.csv # 解压后的商品属性390 MB已 gitignore │ │ │ ├── model/ # 机器学习模块 │ │ ├── __init__.py # 模块初始化 │ │ └── predictor.py # XGBoost 购买预测训练/推理/特征工程 │ │ │ ├── db/ # 数据库模块 │ │ ├── __init__.py # 模块初始化 │ │ ├── sqlite_helper.py # SQLite 连接/建表/导入/查询 │ │ └── ecommerce.db # SQLite 数据库文件运行后生成 │ │ │ ├── data/ # 业务数据CSV由生成器或真实数据转换产出 │ │ ├── customers.csv # 客户表 │ │ ├── products.csv # 产品表 │ │ ├── events.csv # 用户行为事件表 │ │ ├── transactions.csv # 交易表 │ │ └── campaigns.csv # 营销活动表 │ │ │ ├── output/ # 分析输出 │ │ ├── funnel_wide.csv # 漏斗宽表核心中间数据 │ │ ├── analysis_results.json # 全量分析结果 │ │ ├── charts/ # 可视化图表PNG由 funnel.py 生成 │ │ │ ├── 00_cleaning_funnel.png # 数据清洗漏斗 │ │ │ ├── 01_page_funnel.png # 页面漏斗 │ │ │ ├── 01b_strict_page_funnel.png # 严格页面漏斗 │ │ │ ├── 02_event_funnel.png # 事件漏斗 │ │ │ ├── 03_channel_funnels.png # 渠道漏斗对比 │ │ │ ├── 04_loss_waterfall.png # 损失瀑布图 │ │ │ ├── 05_channel_device_heatmap.png # 渠道×设备热力图 │ │ │ ├── 06_dimension_comparison.png # 多维对比 │ │ │ ├── 07_monthly_trend.png # 月度趋势 │ │ │ ├── 08_duration_conversion.png # 时长-转化率 │ │ │ ├── 09_churn_by_channel.png # 渠道流失分析 │ │ │ ├── 10_pie_matrix.png # PIE 优先级矩阵 │ │ │ ├── 11_category_funnel.png # 品类漏斗 │ │ │ ├── 12_strict_vs_coverage.png # 严格 vs 覆盖率对比 │ │ │ ├── 13_deep_link_analysis.png # 深层链接分析 │ │ │ ├── 14_new_vs_returning.png # 新老用户对比 │ │ │ ├── 15_weekend_comparison.png # 周末/工作日对比 │ │ │ ├── 16_cohort_heatmap.png # 留存热力图 │ │ │ └── 16b_visit_cohort_heatmap.png # 访问留存热力图 │ │ └── model/ # 模型输出 │ │ ├── xgb_purchase.pkl # 训练好的 XGBoost 模型 │ │ ├── metrics.json # 评估指标AUC/F1/Accuracy 等 │ │ ├── feature_columns.json # 特征列名列表 │ │ ├── feature_importance.json # 特征重要性排名 │ │ ├── label_encoders.json # 分类特征编码器 │ │ ├── roc_data.json # ROC 曲线数据 │ │ └── confusion_matrix.json # 混淆矩阵数据 │ │ │ └── web/ # Web 应用模块 │ ├── __init__.py # 模块初始化 │ ├── app.py # Flask 应用工厂 │ ├── routes.py # API 路由 页面路由 │ ├── static/ # 静态资源目录 │ │ ├── css/ # 样式文件Bootstrap 为主 │ │ ├── img/ # 图片资源 │ │ └── js/ # JavaScript 脚本 │ └── templates/ # Jinja2 HTML 模板 │ ├── __init__.py # 模板模块初始化 │ ├── base.html # 基础布局侧边栏 顶栏 状态指示 │ ├── dashboard.html # 数据概览页 │ ├── strategy.html # 策略分析页 │ ├── predict.html # 转化预测页 │ └── user_analysis.html # 用户分析页 │ ├── 演示材料/ # 演示相关资料 ├── window.运行步骤.md # Windows 运行步骤说明 └── 项目说明.md # 本文件五、技术栈层级技术后端框架Flask 3.1数据库SQLiteWAL 模式数据处理Pandas 2.2 NumPy 2.1机器学习XGBoost 2.1 scikit-learn 1.6统计分析SciPy 1.14可视化ECharts 5.5前端 Matplotlib 3.9后端前端 UIBootstrap 5.3 Font Awesome 6.5跨域Flask-CORS 5.0本项目详情https://www.aiyuanma.vip/posts/ecommerce_funnel-main