电商数据分析全流程:从数据清洗到业务指标拆解

发布时间:2026/10/17 1:40:13
电商数据分析全流程:从数据清洗到业务指标拆解 很多人学数据分析的时候第一反应是到处找复杂的案例、搞一套看起来很高级的模型结果拿到真实业务数据那一刻直接懵掉。我见过太多这样的同学了下载了一个数据集打开一看几百列然后完全不知道从哪下手。其实数据分析这件事最重要的是先有一套路而不是先有一堆工具。我这两年陆陆续续带过不少新人也复盘过自己的分析习惯发现用一个小而完整的电商零售数据集走一遍全流程是最快建立分析骨架的方式。这篇文章就把我平时分析这类数据的一套完整流程拆给你们看从拿到数据到最后输出结论每一步做了什么、为什么这么做、踩过哪些坑都会讲清楚。1. 拿到数据集先别急着跑代码业务理解是第一步1.1 这个电商数据集到底是什么我这里用的是一份模拟的某生活消费品电商平台一年期订单数据字段不算多大概十几列订单编号、下单时间、商品ID、商品名称、一级品类、二级品类、单价、数量、订单金额、运费、折扣金额、用户ID、用户注册时间、收货省份、收货城市、支付渠道、订单状态。你看这个结构很典型几乎覆盖了电商分析最常用的维度——时间、商品、用户、地区、渠道。为什么要强调先理解数据因为绝大多数学员拿到数据就急着导入工具然后df.head()看一眼就没了。这时候你根本不知道数据里的“业务含义”。比如“订单金额”到底包不包含运费折扣金额是用户优惠还是平台补贴订单状态里面哪些是成功订单、哪些是取消订单这些问题没搞清楚之前所有统计结果都是空中楼阁。我的习惯是先花半小时做三件事第一对着字段清单逐个写下“这个字段在业务里是什么意思”第二确认每行数据是“订单行”还是“订单商品行”如果一个订单买了两件商品是占两行还是一行分析口径完全不同第三看数据的时间范围和状态标签是不是完整的。就拿订单状态来说如果一份数据里有已支付、已发货、已完成、已取消四种状态你做GMV分析的时候就一定要想清楚算不算已取消的订单我自己的处理习惯是分析销售额相关指标时先剔除取消订单而分析用户下单行为时则保留全部记录因为取消行为本身也能反映问题。1.2 分析目标拆解与KPI选择业务理解完之后下一个关键是明确分析目标。同一份电商数据老板问的问题不同你的分析侧重点完全不一样。如果是想了解整体经营状况核心KPI就是GMV成交总额、订单量、支付用户数、客单价如果想知道哪个品类值得加大投入就要做品类销售贡献和增速分析如果想做用户运营就要盯复购率、用户分层、沉默用户占比。我建议新手在动手之前把这次分析的“核心问题”写成一页纸然后拆成可量化的具体指标。比如“分析平台整体销售表现”可以拆成月度GMV和订单量的趋势变化客单价和折扣力度的关系一级品类的销售额构成不同支付渠道的转化效率用户复购的基本画像这五个小问题就是数据分析的靶子。后面所有的取数、清洗、图表、结论全部围绕这些靶子来打。不要想着“顺便把用户流失模型也做了”一次分析解决一个核心问题做到能落地的程度比做十个半吊子维度强得多。2. 数据清洗整整半天都在和脏数据打交道2.1 字段类型与缺失值处理先摸清底细很多人以为数据清洗就是把空值删掉其实没那么简单。拿到数据之后第一步是看每个字段的“数据类型”是不是符合预期。比如下单时间这一列如果读进来之后显示是字符串而不是时间类型后面的时间趋势分析全废。再比如金额字段如果某些行里存的是12.5元这种带文本的值也没办法直接算总和。缺失值处理是清洗环节的重头戏。我建议用四个维度来排查空值缺失比例、字段重要性、缺失是否随机、业务上能否合理地填补。还是拿我这份数据说用户ID在部分订单行里是空的我做了个统计差不多只有 0.3% 的缺失那直接删除这几行完全没影响但商品名称缺失了 5%那就要小心了可能需要去商品ID关联补充或者把这块数据单独标记为“未知商品”而不是粗暴地删掉因为一旦删掉品类分析的比例就会被悄悄扭曲。我的实操经验是分三步走先跑一个缺失值概览看哪些字段缺得多、哪些缺得少对缺得少的字段判断是否可以按业务规则补上比如某商品ID有值时商品名缺失可以直接关联回去对缺得多且不影响核心分析的字段建立“是否缺失”的新特征保留着防止以后要用这里尤其要提醒的是“时间字段”的缺失订单时间是电商分析的命脉如果超过1%缺失我通常直接放弃小时级别的分析但保留日期级别的趋势分析因为按日聚合可以容掉少数几个丢时间的数据点。反之如果你要做的正是精细化时段分析缺失率又高那这块数据就不能用。2.2 重复值、异常值与统一格式常见坑位清单重复值这个坑看起来简单但处理策略得想清楚。完全一模一样的行所有字段都相同几乎可以确定是重复记录删除就行。麻烦的是那种“部分重复”——比如同一订单号出现两次但其中一行没填收货省份。这种一般要注意先看订单号如果一个订单号对应多个商品那是正常的多商品订单但如果同一个订单号同一个商品ID出现两次就要小心是不是录重了。异常值这块我给一个非常实用的判断思路不要孤立地看数值要把数值放到业务场景里看。最典型的例子是单价为0的“商品”。我这份模拟数据里就有几十条单价为0但数量为正的订单单独看像是异常值但结合订单金额和折扣金额来看就会发现属于“满减优惠后实际支付为0”的促销订单这是合法业务。而单价超过10000元的某标价异常订单结合品类看就知道是数据录入错误。所以说到底异常值不是纯统计学问题而是“是否符合业务常识”的问题。还有一个多数教程不会强调的坑格式统一。商品名称里的空格、省份字段偶尔出现“北京市/北京/北京市 ”这种写法、支付渠道中“支付宝”“ali pay”“AliPay”三个名称并存……每一条都是统计分析时的地雷。我的处理方式是字符串类型字段统一去除首尾空格并规范大小写省市级字段按国家级行政区划代码表做一次映射渠道字段先分组再统一映射。做完这些再跑 group by 的时候就不会看到一堆明明同一事物却被拆成好几类的数据了。3. 探索性数据分析用图先把数据“看”明白3.1 单变量分布最容易被忽略的第一步清洗完数据很多新手就急着去算总GMV、总订单量然后画一个折线图完事。这不够。我强烈建议先做一遍“单变量分布分析”——就是只盯一个字段看它的整体形态。这一步的价值在于它能提前暴露数据的病理特征也能为后续建模或分箱提供依据。先说订单金额剔除取消订单后。我画了直方图发现它呈现出典型的长尾分布绝大多数订单在50到200元之间但尾巴一直拖到几千元。这意味着如果用平均值描述客单价会被少数大单带着走此时更稳健的指标是“中位数”。比如某个月的客单价平均值是180元但中位数只有120元你要是在汇报里只写“客单价180”老板会以为是普遍消费水平实际上半个平台的用户消费不到120元。所以我做分析的时候对这种偏态分布字段平均值和中位数两个数一块看差距越大说明分层越明显。再看单价和数量的分布。单价分布可以直观地看出平台主营价格带——你的商品是高客单还是低客单用户群体完全不同。数量分布则经常会出现一个“尖峰”在数量1这很正常说明大部分用户单次只买一件多件订单是小部分。如果你发现数量10的订单特别多要去核实一下是不是有批发或团购订单混进来了这会严重扭曲你对“普通用户行为”的判断。3.2 多变量关系找到藏在数据里的线索单变量看完了接下来就是把字段和字段放到一起做关系分析。这一阶段的核心不是做多复杂的模型而是通过交叉表、分组聚合和散点图快速锁定“哪些变量之间有强关联”。我这里做了一个典型的操作按一级品类分组统计每个品类的订单量、销售额、平均单价、平均折扣率。结果很有意思——某些品类比如零食订单量很大但销售额占比不高属于“高频低客单”的引流品类而某些品类比如家电订单量不大但销售额贡献突出属于“低频高客单”的利润品类。这两种品类的运营策略完全不一样前者要保复购和连带率后者要保客单价和转化率。没有这一步交叉分析你在看“哪个品类销售最好”的时候很容易被单一指标带偏——销售额第一的品类不一定是利润第一的品类更不一定是用户最忠诚的品类。另一个很值得看的关系是“时间×支付渠道”。我把月度和支付渠道做成透视表发现某些渠道在特定月份占比突然上升。顺着日期标签一查发现是平台搞周年庆活动的时候某个支付渠道推出了随机立减瞬时交易量暴涨。这个结论如果只看总趋势是发现不了的只有把维度切到渠道和时间两个交叉点才能看到。做多变量分析本质上就是在给“整体结论”做解剖找到每一个数字波动背后的驱动因子。4. 业务指标拆解从销售额到复购率的完整链路4.1 整体销售趋势与周期性规律拆解业务指标的第一步是看整体趋势和周期规律这也是最有“体感”的分析环节。我会把日订单量和日GMV拉成时间序列先看全貌再看波峰波谷的点。我这里的数据反映出一个非常明确的规律周末订单量显著高于工作日尤其是周五到周日属于典型的“周末消费型”电商。更明显的是每月下旬会出现一次订单量小高峰追查了一下发现和平台固定发券时间完全重合。这就是时间序列分析的切入点——你不是在画一张图看高低起伏而是在给每一个“峰”和“谷”找业务解释。找到了解释分析才有价值找不到解释的异常波动就要标出来提醒业务方去排查比如是不是数据漏了、是不是支付接口出过故障。这里强烈建议做一个动作按“星期几”看平均订单量和平均客单价。因为“周末订单多”不够还需要知道“周末的客单价是高还是低”这直接影响到营销活动的设计逻辑。比如我这边数据显示周末订单量高但客单价明显低于工作日说明周末用户以小额即时消费为主此时推大额满减的效果未必好推低价凑单品反而更匹配消费心理。4.2 品类与地区维度找到增长引擎拆完整体趋势一定要下钻到品类和地区维度。品类分析的推荐姿势是“销售额贡献”和“订单量贡献”交叉看再加一个“月环比增速”指标。销售额占比高增速快的品类是明星品类要重点保销售额占比高增速慢的是现金牛品类要稳住基本盘销售额占比低增速快的是潜力品类可以考虑给资源测试销售额占比低增速慢的大概属于长尾品类不必花太多精力。把品类当成一个组合来管理而不是逐一孤立地看才算真正理解了结构。地区维度的分析比较实用。按省份聚合之后我发现销售额排名前五的省份占了总销售额将近45%但订单量占比没那么高说明这些省份的客单价远高于平均水平——大概率是经济较发达地区用户对高客单商品接受度高。对应的运营启发是广告投放预算是否可以更聚焦到高转化地区物流履约能力是否可以优先保障这些区域的时效。分析不是罗列排名而是通过维度拆解把结论翻译成业务动作。这个环节还有个小技巧尽量用“双重分组”比如省份×品类去看而不是只看一张省份汇总表。因为一个品类在A省份卖爆在B省份可能完全没人买单看地区总排名会掩盖这种差异。我每次都会挑一番TOP5销售额品类中各区域内部的占比及时发现异常地区比如某些偏远省份的电器品类销售额异常高后来一查是有企业采购订单混入直接剔除。4.3 用户生命周期复购与流失的真相用户维度的分析是电商数据的精华部分也是大多数教程讲得最浅的部分。很多人只会算一个新客数和老客数但我建议从“用户成长阶梯”来看新客首单→复购→活跃→流失每一层都对应不同的运营策略。我基于订单数据和用户注册时间给每个用户打了几个基础标签首单时间、最近一次下单时间、累计订单数、累计消费金额。然后做了三个层级的分析。第一层是整体复购率统计所有下单用户中有过两次及以上购买行为的占比是多少。第二层是按首单月份看用户留存1月首次下单的用户到2月还有多少比例继续下单到3月呢这个指标直接揭示“拉新—激活—留存”链条的健康度。第三层是RFM简化版把用户按“最近一次下单距今时间”“累计下单次数”“累计消费金额”三个维度统统切分分成高价值活跃、高价值沉默、低价值活跃、低价值沉默等几类然后统计每类人数占比和销售额占比。说起来都是常见指标但实操中很容易踩一个口径坑算“复购用户”的时候到底是算“有两次以上购买的用户数占所有下单用户数的比例”还是“本月下单用户中历史上买过两次以上的用户占比”这两个概念差很多。我统一采用的是后一种“老客占比”口径因为它在月度之间可比也更贴近业务日常用语。每个指标一定要先定义清楚口径再写代码否则分析做完才发现口径不对返工成本非常高。5. 可视化与结论输出让非技术同事也能看懂5.1 图表选型的几条实用原则数据分析的最后一步往往是输出报告。报告的核心不是把图表堆上去而是让一个不了解数据的同事看图之后能直接说出关键结论。图表选型这块我有几条很实用的习惯。先说时间趋势统一用折线图而且一次不要放超过三条线线多了就看不清了。如果要同时放GMV和订单量两个量纲不同的指标用双Y轴要警惕我一般避免双Y轴因为它容易诱导视觉对比。比如左轴GMV、右轴订单量两边的刻度比例可以被人为改得看起来同步或反向。如果非要表达两个指标的关系我更喜欢分上下两个子图共享X轴这样既直观又不容易误导。再看份额类数据比如品类销售额占比我用堆叠柱状图而不是饼图。因为饼图的维度一多色块挤在一起很难比较堆叠柱状图可以顺带看出每个类别的占比随时间的变化。对比类数据比如不同支付渠道的客单价用柱状图加数据标签最直接。而字段之间相关性的展示一律用散点图再配一个简单的相关系数文字说明不要直接在图上拟合一堆复杂曲线除非业务上有明确的理论依据。5.2 从分析到建议数据怎么变成业务动作做再多图落到报告里的核心仍然是“结论—证据—建议”这种结构。我的习惯是先写一句话结论然后列出支撑结论的数据证据最后给一个具体可执行的建议。举一个例子。通过数据我看到“周末订单量高但客单价低”结论是平台销售高峰集中在周末但依赖小额订单支撑。支撑证据是周末日均订单量比工作日高32%但客单价低18%。建议就是周末期间增加“凑单满减”类活动通过调整起送门槛带动客单价上升而在工作日推动大额消费品类的限时优惠拉平平日销售低谷。这种输出方式的要点是不要让读者自己从图表里“悟”出观点。你是分析师你的工作就是明确指出数据在说什么、对业务意味着什么、建议接下来做什么。每个建议都应该对应到某一个具体指标比如“客单价”“复购率”“某品类销售额占比”否则建议就是空话。我在带新人的时候经常说一句话“如果你给的结论老板听完不需要问‘所以呢’那就说明到位了。”报告的呈现上配色建议克制一点一个主题色加一个强调色就够颜色标成“异常高”“异常低”看的时候才醒目。把核心指标做成一个三到五行的KPI卡放在报告最前面紧接着就是关键图表和结论建议不要再把过程性的探索步骤全放进去。分析过程中的探索图只选最有说服力的三四张进报告其余留在工作笔记里就好。6. 实操避坑清单与学习路径建议6.1 我从这份数据里踩过的几个具体的坑清理这份模拟电商数据的时候有几个坑我印象特别深拿出来给你们排雷。第一个坑是“订单金额”的加总陷阱。这份数据里订单金额字段其实已经包含了运费但一开始我直接用订单金额合计当GMV结果发现和支付渠道流水对不上。后来查字段说明才意识到运费收入也混在订单金额里而GMV的口径通常要么含运费要么不含必须统一。各位在分析自己的数据时第一件事先问清楚金额字段的构成否则就是给自己埋雷。第二个坑是“折扣金额”为负数。我对折扣金额做分布统计时发现竟然有负数一开始以为是数据错误后来才知道是部分订单发生了“退款差价”系统把退款记为负折扣。这种情况如果不处理所有折扣率分析都会偏移。我的处理方式是把负值单独提取出来再结合退款状态判断不做无脑绝对值。第三个坑是“同一用户多个账号”。数据分析里经常假设用户ID就是唯一用户但实际业务中同一个人可能注册了两个账号。我这次的数据虽然没做实名关联但在做用户分层的时保留了用户ID维度同时提醒业务方这个数据的用户数有被高估的可能。这个照实说明比假装精确更有价值。这三个坑指向同一个道理数据分析里没有一步到位的“标准答案”每一个环节都要带着“这个数字真的符合业务逻辑吗”的疑问去过。有了这个疑问你就不会在清洗阶段就把异常值一把删除也不会在出结论时忽略口径的歧义。6.2 新手如何通过这类数据集练出分析手感如果你现在刚学数据分析不久我的建议是不要急着去啃机器学习算法先把“一份数据集从生到熟”的过程走通十遍。具体可以这样练每拿一份新数据固定走完“业务理解→数据清洗→单变量分布→分组交叉→指标拆解→图表输出→结论建议”这条完整链路每一遍都尝试换一个业务侧重点比如这周关心品类下周关心用户再下周关心地区。同一个数据集从不同角度反复磨你才会真正理解“业务目标决定分析路径”这句话。投入时间方面我的亲身体会是清洗和探索占七成时间真正的“分析”和出结论只占三成。哪个环节薄弱就集中补哪个环节。如果你拿到数据习惯性一头扎进Python开始写聚合先停下来强迫自己把该回答的业务问题先写在纸上列好指标清单然后再打开工具。这样练上几轮你会发现自己的分析速度和分析质量都有非常大的提升。另外建议自始至终保留一份“分析笔记”记录每个数据集的字段口径、清洗动作、踩坑点。以后遇到类似数据直接翻笔记就能少走很多弯路。我自己整理的数据集笔记到现在已经积累了厚厚一沓每次做新项目之前翻一翻思路基本马上就能清晰起来。最后再说一个小技巧分析做完之后隔两天再把报告拿回来自己看一遍。这一遍你会非常容易发现哪里结论下得太满、哪里有更好的表达方式。反复修改的过程才是分析能力真正沉淀的过程。数据分析这件事靠的不是灵感而是把一个又一个细节做到位——你把这套流程走熟了面对任何电商零售数据就不会再有“不知道从哪下手”的慌张感了。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询