HI,下午好,新媒易不收取任何费用,公益非盈利机构
24小时服务热线: 4000-162-302
请扫码咨询

新媒易动态

NEWS CENTER

用SQL做一份数据分析报告涉及什么哪些知识点?

2021-08-09

如何分析用户?

用SQL做一份数据分析报告涉及什么哪些知识点?

在工作中,每个数据分析师都离不开做数据分析报告,而一份可落地的报告更是要求灵活地应用工具及理论知识。接下来,我们从工具应用的角度,看看如何用SQL做一份完整的数据分析报告。

1. 数据导入

(1)新建数据库

用优秀的数据库管理工具Navicat 连接数据库,通过Navicat 将数据(如Excel、SQL脚本等格式)导入数据库。

2. 数据清洗

数据清洗的目的是为了将数据按照业务分析需求,剔除异常值、离群值,使分析结果更准确反映业务实际。

常见的步骤如下:

是否存在空值:WHERE`字段名`is null

是否存在重复数据:通过GROUP BY关键字实现

SELECTCOUNTFROM表名GROUPBY字段名HAVINGCOUNT(*) &1

是否存在业务定义以外的数据:比如需要分析华南区域数据,而数据中出现华北数据

3. 数据格式化

这一步是要根据后续分析需求,调整表格结构、数据格式等,如出于数据存放原因,拿到的数据表格可能是一维表,不满足分析需求,需要将其调整为二维表。常见的步骤如下:

  1. 时间函数:如将「时间戳」格式化为日期、时间、月份、周几(常见于周分析)等,可通过「FROM_UNIXTIME」「DATE_FORMAT」等函数实现
  2. 行列互换:如解决上述的一维表转为二维表的问题,可通过关键字「CASE WHEN」实现
  3. 字段的拆分与合并:如将收货地址字段拆为省、市、镇等字段,可通过「CONCAT」「LEFT」「RIGHT」「SUBSTRING」等函数实现

4. 整体分析

在开始真正的分析之前,需要进行探索性数据分析(Exploratory Data Analysis,EDA),也就是对现有数据进行整体分析,对现状有大体的了解。

更重要的是,通过整体分析,找出业务运营存在的问题,进而提出业务目标,展开后续的深度分析。

常见的步骤如下:

漏斗分析:如海盗模型AARRR,阿里营销模型AIPL等,通过简单的「COUNT」函数,直接数就可实现

5. 建立视图

面对复杂的业务分析,SQL语句也会变得复杂,往往需要不断嵌套。为了减少分析时语句的复杂性、避免重复执行相同语句,可以采用新建视图的方式,将重复性高的语句固定为视图,再在此基础上进行复杂查询。

新建视图:CREATEVIEW视图名ASSELECT…

6. 用户分析

从整体分析中,明确业务问题、目标后,便可开始进行用户分析。根据分析目的的不同,采用不同的分析方法,而常见的分析方法如下:

(1)「人货场」分析

(2)「复购」分析

核心问题在于如何计算“复购”:用「窗口函数+DENSE_RANK()」统计每个订单是该用户的第几次消费,命名为’N_CONSUME’。

第一次消费即为用户“首购订单”,大于等于第二次消费的订单则为“复购订单“,针对复购订单进行统计,即可进行复购分析。

(3)「RFM模型」分析

核心问题在于如何定义阈值及人群划分:通过【窗口函数】可计算出每个用户的RFM值:

相关推荐