PulseFit Sample Data
收藏资源简介:
这是一个虚构的健康和健身应用PulseFit的样本数据集,用于Snowflake的摄取和建模练习。数据集包含500名用户和12名教练,约9个月的活动数据(2025年7月至2026年4月),具有真实的注册曲线、流失率、升级/降级路径等。数据集还包括多种文件格式(CSV和JSON),适用于多种分析用例,如队列保留和流失分析、参与度分析、漏斗分析等。
This is a sample dataset for the fictional health and fitness application PulseFit, intended for Snowflake ingestion and modeling exercises. It contains activity data spanning approximately 9 months (July 2025 to April 2026) across 500 users and 12 coaches, featuring realistic registration curves, churn rates, upgrade/downgrade pathways, and other relevant patterns. The dataset supports multiple file formats including CSV and JSON, catering to various analytical use cases such as cohort retention and churn analysis, engagement analysis, and funnel analysis.
数据集概述:PulseFit Sample Data
PulseFit 是一个虚构的健康与健身应用程序的样本数据集,专为 Snowflake 数据摄取和建模练习而设计。
数据规模
- 用户:500 个用户,12 名教练
- 时间跨度:约 9 个月的活动数据(2025 年 7 月至 2026 年 4 月)
- 特征:包含真实的注册曲线(一月高峰)、用户流失、套餐升级/降级;设有参与度层级(重度/常规/轻度),驱动所有事实表的量级;行为相关性强(目标影响锻炼类型、膳食热量和体重轨迹);数据中故意包含缺失值(如国家、出生日期、体脂率、腰围、睡眠时长等)
数据文件
| 文件名 | 大约行数 | 格式 | 备注 |
|---|---|---|---|
users.csv |
500 | CSV | 用户维度表 |
trainers.csv |
12 | CSV | 教练维度表(包含 1 名不活跃教练) |
subscriptions.csv |
~450 | CSV | 订阅维度表,包含升级/降级/流失路径 |
goals.csv |
~650 | CSV | 用户目标,包含真实的状态混合 |
workouts.csv |
~15k | CSV | 锻炼事实表,教练 ID 有时为空 |
nutrition_logs.csv |
~30k | CSV | 营养日志事实表,按餐次级别 |
body_metrics.csv |
~4k | CSV | 身体指标事实表,数据稀疏 |
daily_activity.csv |
~60k | CSV | 日常活动事实表,每日频率 |
chat_messages.json |
~2k | NDJSON | 教练/用户消息,仅限 Premium/Elite 用户 |
app_events.json |
~40k | NDJSON | 会话分组,含嵌套元数据 |
适用场景
- CSV 文件通过 Snowflake 内部阶段的
COPY INTO命令进行数据摄取 - JSON 文件加载到
VARIANT列中,并结合LATERAL FLATTEN进行处理 - 构建 Medallion 数据架构:原始层 → 暂存层 → 事实表和维度表
- 群组留存与流失分析(基于注册日期和订阅结束日期)
- 参与度分析(每位用户的会话数,以及来自
app_events的 DAU/WAU/MAU) - 漏斗分析(打开应用 → 记录锻炼、打开应用 → 记录饮食)
- 目标达成情况与活动量分析
- 教练绩效分析(消息量、分配的用户数、辅导用户的留存率)
建议的 Snowflake 操作流程
- 将文件上传到内部阶段(使用
PUT file://... @my_stage) - 创建与 CSV 模式对应的原始表
- 将 JSON 文件加载到
VARIANT列 - 使用
LATERAL FLATTEN将 JSON 展平到暂存表 - 构建维度表(用户、教练、日期)和事实表(锻炼、营养、活动、事件)
- 构建报表数据集:留存、参与度、教练影响、收入
已知的数据问题(为数据清洗练习而故意设置)
- 约 2% 的用户缺少国家信息
- 约 1% 的用户缺少出生日期
- 约 8% 的身体指标行缺少体脂率数据
- 约 12% 的身体指标行缺少腰围数据
- 约 5% 的日常活动行缺少睡眠时长数据
- 部分电子邮件地址中包含数字或下划线
- 订阅历史包含多行用户(降级/升级),需要使用窗口函数确定当前套餐
- 教练
T3011当前不活跃,但可能出现在较早的锻炼记录中




