0 来源
贪心科技&京东 202007-202010
1 导论
数据分析师的核心能力是把数据转换成领域内的生产力的能力。
数据分析历史上的经典案例:彩票概率问题和战斗机故障问题:统计规律的同时避免幸存者偏差的陷阱
数据分析在技术的辅助上,在道德的法则下做正确的事。
Talk is cheap,Show me the data
1.1 能力及任务
1、优秀数据分析师的能力要求
对业务的洞察力决定了职业上限,技术水平决定了下限。
- 分析思维
数据思维和业务思维;饱含热情 - 工具使用
excel,python,r,sel等,用于数据抓取,清洗,分析,可视化;数据的敏感度 - 表达沟通
数据的可视化,分析报告,驱动项目落地;
2、工作内容
建立和维护数据指标体系
数据的抓取,采集和展示
数据分析和数据化决策
1.2 python基础
1.2.1 jupyter notebook
jupyter常用快捷键:
enter + shift :运行本单元格,并且选中下一个单元格
enter + ctrl:仅运行本单元格
enter: 单元格编辑状态
esc:单元格退出编辑状态
y:先esc,按y单元格转入代码状态
m: 先esc,按m单元格转入markdown状态
a:单元格上方above 插入新的单元格
b:单元格下方below 插入新的单元格
L: 行号显示隐藏
魔法函数,执行python代码块的里的shell命令
%:单行运行
%%:整个cell执行
jupyter常用魔法函数:
%matplotlib inline :直接绘图
%%timeit:cell执行时间
%%prun:调用profile模块,对代码进行性能分析
%%writefile:写入文件
%%<URL链接>:jupyter notebook 中直接加载指定url的源代码
jupter常用插件:
pip install jupyter_nbextensions_configurator
jupyter nbextensions_configurator enable --user
table of Contents:目录
hide input(all):隐藏单元格的代码,只显示结果
excute time:显示代码块运行时间
variable inspector:当前已有的变量查看
table_beautifulier:pandas 表格优化显示
atuopep8:代码快速格式化
1.2.2 python numpy pandas
1、常用的基本数据类型(略)
2、常用模块
python内建:os,sys,time,datetime,json,re,pickle等
数据分析相关:scipy,numpy,pandas,sklearn,matplotlib等
3、文件处理
open(r,w,a模式)
pandas模块的读写
4、函数方法与进阶
函数嵌套,匿名函数;
递归,闭包,装饰器,生成器等
5、numpy的组合数组语法0,1轴问题
np.concatenate((arr1,arr2),axis=1)
np.concatenate((arr1,arr2),axis=0)
axios=1表示在内层矩阵
合并,axios=0表示在最外层矩
阵合并。这个解释清晰的解决了0,1轴方向容易混乱的问题。
6、pandas的loc和iloc取值
loc:数据带有的自定义行index(名称)来取值,包括尾部数据
iloc:按照从0开始的index行号下标来取值,和自定义行号无关,下标切片[a,b]不包括尾b
sr[102],单值index取值默认使用loc取值,sr[102,103]多值index取值默认使用iloc取值。
sr.loc[102,103]会把名称为102和103的行都取出来,包含首尾的元素
切片取数时,避免先行后列或者先列后行(df.['金额'].[102,103]
),用loc方式,对行和列进行筛选最好:df.loc[df2['人口']<10,'金额']
7、pandas 数据处理
8、时间转化为周几:
date.applay(lambda x: x.strftime("%w"))
1.2.3 matplotlib
散点图:plt.scatter()
折线图:plt.plot()
直方图:plt.hist()
条形图:plt.bar()
hist,bin_edges = np.histogram():直方图统计累计占比
具体参数可以看文档
1.3 统计指标
1.3.1 统计学基础
总体集合和样本抽样
1.3.2 描述性统计
快速高效的得到数据的大致描述
1、频数分析
分类性的数据,频数以及占比
2、集中趋势
众数:适用于数据量较多,一组数据可能有多个众数,不受极端值的影响。主要适用于分类数据。
中位数:不受极值影响,用于顺序数据,不适用分类数据
均值:易受到极值影响
分位数:也呈现了部分离散程度
加权算数平均值:可以类比MA和SMA,实际统计可以用分组,再组中值*频次(权重)来计算
几何平均数:geonetric mean :比如用来计算平均增长率,平均年化
G
=
X
1
∗
X
2
.
.
.
X
n
n
=
∏
i
=
0
n
X
i
n
G = \sqrt[n]{X_1*X_2...X_n} = \sqrt[n]{\prod \limits_{i=0}^nX_i}
G=nX1∗X2...Xn=ni=0∏nXi
3、离散程度
异种比率:variation ratio
非众数频数占比,衡量众数的代表性
极差:max-min
四分位差:75%-25%,反应中间50%数据量的离散程度,可以衡量中位数的代表性
方差:
σ
2
=
∑
(
X
−
μ
)
2
N
\sigma^2=\frac{ \sum(X-\mu)^2 }N
σ2=N∑(X−μ)2
numpy.var()
计算
σ
\sigma
σ
标准差:
变异(离散)系数:coefficient of variance:
C
V
=
σ
μ
CV=\frac \sigma \mu
CV=μσ
normal():numpy(pandas)正态分布方法
randint():numpy(pandas)均匀分布方法
4、偏差程度
z-分数:z-score,standard score
反应了一个值距离平均值的相对标准距离(几个标准差):
正态分布:68%数据在1个标准差内,95%在2个标准差内,99%的数据都分布在3个标准差之内;
任意分布:切比雪夫不等式:m个标准差内的比例至少是
1
−
1
m
2
1-\frac1{m^2}
1−m21
用于数据的标准化(消除极值量纲的影响)
Z
i
=
X
i
−
μ
σ
Z_i = \frac {X_i - \mu} \sigma
Zi=σXi−μ
5、相关程度
协方差 covariance:两组数据变量
之间的关系,方差是协方差的特殊情况:2个变量是一个
c
o
v
(
x
,
y
)
=
∑
i
=
1
n
(
x
i
−
x
ˉ
)
2
∗
∑
i
=
1
n
(
y
i
−
y
ˉ
)
2
∑
i
=
1
n
(
x
i
−
x
ˉ
)
2
∗
∑
i
=
1
n
(
y
i
−
y
ˉ
)
2
cov(x,y)=\frac{\sum_{i=1}^{n}({x_i-\bar{x})^2}*\sum_{i=1}^{n}({y_i-\bar{y})^2}}{\sqrt{\sum_{i=1}^{n}({x_i-\bar{x})^2}}*\sqrt{\sum_{i=1}^{n}({y_i-\bar{y})^2}}}
cov(x,y)=∑i=1n(xi−xˉ)2∗∑i=1n(yi−yˉ)2∑i=1n(xi−xˉ)2∗∑i=1n(yi−yˉ)2
相关系数correlation coefficient 也叫线性相关系数,在协方差的基础上得到的
r
(
X
,
Y
)
=
c
o
v
(
X
,
Y
)
σ
X
σ
Y
r(X,Y) = \frac {cov(X,Y)}{\sigma_X\sigma_Y}
r(X,Y)=σXσYcov(X,Y)
1.4 SQL基础
SQL语句的关键字不区分大小写
innodb包含索引,是目前最常用的数据库存储格式
DDL:数据库定义语言
DCL:控制语言——授权(远程连接)和角色控制
DML:操作语言——增删改查
TCL:事务控制语言——设置事务,回滚操作
1.4.1 常见DML查询语言
1、条件查询 - 基本过滤 where
基本格式:select 字段名1,字段名2 from 表名 where 条件;
2、条件查询 - 模糊查询 where+like
基本格式:select 字段名1,字段名2 from 表名 where 条件 like “%关键字%”;
like会使索引失效,效率下降,慎重使用
3、条件查询 - 多条件查询 where+and/or
基本格式:select 字段名1,字段名2 from 表名 where 条件1 and/or 条件2;
4、范围查询 - 范围查询 where + in/between
基本格式:select 字段名1,字段名2 from 表名 where 字段 in (值1,值2,值3)/between(值1,值2);
不同于模糊匹配,()里的条件还是完全匹配。
5、空
空值(null)和空字符串(“”)不同
基本格式:
select 字段名1,字段名2 from 表名 where 字段1 is (not) null;
select 字段名1,字段名2 from 表名 where 字段1 = “”;
6、条件查询 - 返回部分数据 limit
select 字段1 from score limit 10,20;跳过前10条数据的20条数据(11-30条的数据)
7、联合查询 - union
不要乱联合查询无关的数据表
8、分组查询 - group by
count(*)和count(id)来统计分组个数
9、分组查询 - 条件筛选 group by + having
区别条件查询和条件筛选
10、结果排序- order by (desc)
1.4.2 子查询 as
as “别名”,可省略——空格后加"别名"
1.4.3 关联查询 join
1.4.4 常用函数
distinct,max,min,avg,sum,MD5(密码等相关),abs,count,unix_timestamp(时间戳19700101 00:00:00到现在的毫秒数),current_date(当前时间),datediff(a,b)(时间差),from_unixtime(“加一个秒的参数”)(时间戳数字转换成date格式)
2 思维模型
2.1 DA技能在互联网产品应用
精准营销(2015年才出现的名词)
精细化运营
产品设计
2.2 a/b test
1、sample size 数量
2、Interative tests 迭代次数
3、remove interference
2.3 三板斧
1、找出问题
精确的使用描述性统计
2、分析问题
- 细分指标下的多维度分析
常用的指标维度如下:
用户指标:地区,年龄,性别,学历,设备型号,操作系统等
产品指标:产品类型
运营指标:活动类型
营销指标:营销渠道、营销方式 - 相关性分析,找出关键因素
- 预测性分析,时序性分析
3、解决问题
2.4 ARRR 漏斗模型
2.4.1 基本介绍
流程式
的数据分析模型,重点关注关键行为间
的转化流失
情况。
传统AIDMA模型:attention(进入视线)-interest(感兴趣)-desire(潜意识需求)-memory(短时间挥之不去)-action(购买),缺点:用户向的指标,关键节点缺乏用户反馈,难以量化。
互联网之下的AISAS模型:attention(进入视线)-interest(感兴趣)-search(搜索)-action(购买)-share(分享或者评分),增加了互联网上的节点反馈,但是还是难以量化。
现在常用:AARRR模型:acquisition获客-activation激活-retention留存-revenue商业变现-referral自传播,相对来说关键节点可量化性强,也可以关联到公司的kpi。
电商模型:落地主页-详情页-购物车-订单-付款-完成(确认收获评价等)
2.4.2 漏斗模型的构建
1、梳理主要路径和流失节点
参考绘制太阳图来梳理路径。
根据已有数据进行基本的描述性统计,梳理路径
2、选择核心路径 重点
- 开口大(数据基数大)的路径
- 漏斗环节不能太多
- 环节间的量差不能太大
3、观察和比较数据
- 纵向对比
- 横向对比(指标拆分,时间等多维度比较)
- 不同层级上具体的指标
- 结合其他的数据分析工具
- 全路径从用户角度体验(非数据但是也很重要,可以发现新思路)
2.5 (波士顿)矩阵模型
基于市场增长率-相对市场份额的矩阵,也可以用其他指标构建矩阵。用于用户,产品定位问题的数据化处理
月牙原则(分布)于跃迁原则
明星类用户产品:针对性的增加运营活动,提高用户忠诚度及产品热度
现金牛型用户:收益一般但占比高,主打维持住就行
问题性:收益高但是占比低或者波动大,适当推动优惠通知,邮件等提高销售频率占比
瘦狗型:了解痛点,改善产品或者直接砍掉
2.6 逻辑回归模型
常用于解决二分类(0或1)的问题
2.6.1 推荐系统简介
基于关联规则的推荐
item->user
关联商品推荐给相似的已购用户
,比如apriori算法
协同过滤的推荐:
user->user
用户对商品评分,并预测用户对某些商品的评分,找到最高的预测结果推给目标用户
item->item
用户对商品评分,找到相似度最高的商品,推荐给所有用户
3 业务工作流
3.1 数据分析的四大步骤
-
数据抓取:
1、 埋点:业务需求转化为数据需求
定义数据口径和指标统计方式。
事件的分类聚合(点击,曝光,页面停留时间),
指标的记录规则和计数方式,
4W1H模型来筛选数据(who会员,活跃?,what点击事件?,when发生时刻,停留时间?,where页面来源?,how设备,WiFi/流量,系统?)
2、爬虫:个别要求
3、api:一般是三方提供的收费资源 -
数据清洗:
完整性,唯一性,准确性,一致性
1、缺失值处理:数据信息(前后,经验)补全,统计数据模型(平均,众数)补全,删除
2、数据格式化:日期时间,字符,错位等
3、逻辑错误处理:去重,删除 -
数据分析
系统科学的从数据中发现因果,内部联系,业务规律等结果
1、描述性分析(发生了什么?)
准确,完善甚至是实时数据分析
计算数据的集中性特征(均值,极值,中位数等)和波动性特征(标准差,峰度,偏度等)
2、诊断性分析(原因)
深入细分到业务细节,时间占比最高。
识别依赖关系和影响因子(权重),多和业务交流,基于现有特征构造新的特征并验证
3、预测性分析(推论)
特征和变量关系的总结描述及验证
4、规范性分析(方案从头到尾的制定)
基于以上3个制定最佳方案或者几种方案进行test -
业务决策
3.2 特征工程
1、数据基础摸底和提取
2、数据清理
缺失值,异常值等处理,和业务交流后明确的排除数据。
特征的共线性处理
特征的离散化,如分箱等
特征的标准化,归一化等
3.3 数据导向的业务工作流程
3.3.1 互联网产品数据导向工作流
- 一级指标:业务需求的核心指标,10个以内
- 二级指标:业务分类,AARRR,产品功能等
- 三个指标:拆解指标
3.3.2 电商运营数据导向工作流
3.3.3 数据分析技术及工具
金字塔原理(书籍)
SCQA:背景-冲突-疑问-答案
4 实战指标案例
4.1 数据化运营框架
0、电商指标
1、渠道分析
2、收入异常分析
3、页面分析
4、用户分析
4.2 字段说明
1、用户信息
2、购物车
3、订单
4.3 违规案例(抖音)
4.4 人货场指标
场:除了人物,商品(整体上的参数)相关因素之外的地域,时间,页面等指标。
人:用户和客服相关指标
货:商品库存采购,销售(单品具体参数),配货
4.5 RFM指标
5 面试准备
5.1 简历
项目强相关于职位
相关技术,数据罗列,主次清晰
总结重点突出职业相关
5.2 项目介绍
STAR原则:
situation项目情景
task计划任务
action实现方法
result结果呈现
5.2 活动结果评估
1、描述性分析重要指标
2、重要指标的变化中细分指标,拆分维度
3、比较不同类型活动运营情况
4、总结预测