数据分析:商业分析方法进阶(一)

一、知识点

分析方法

1、群组分析方法

如何分析用户留存(流失)?

2、RFM分析方法

如何对用户按价值分类?

3、漏斗分析方法

如何分析转化效果?

4、杜邦分析方法

如何对公司的财务分析?

5、如何清洗数据

二、项目练习

User Behavior Data from Taobao for Recommendation
User Behavior 是来自淘宝的用户行为数据集,用于隐式反馈的推荐问题

数据地址

本数据集包含了2017年11月25日至2017年12月3日之间,有行为的约一百万随机用户的所有行为(行为包括点击、购买、加购、喜欢)。数据集的组织形式和MovieLens-20M类似,即数据集的每一行表示一条用户行为,由用户ID、商品ID、商品类目ID、行为类型和时间戳组成,并以逗号分隔。

每列详细情况
共有四种用户行为类型
数据集大小

数据清洗

1、查找是否有重复数据
select *
from
(
 select *,count(*) as countNumber
 from userbehavior
 group by  user_id , item_id, `timestamp`
) as t
where countNumber > 1;

查询结果显示数据集并无重复数据

2、查找是否空值

select * 
from userbehavior
where user_id is null or category_id is null 
or item_id is null or behavior_type is  null 
or `timestamp` is null;

查询结果显示数据集并无空值

3、查找是否有超出分析时间的数据

给表添加一列叫dates,用于记录行为发生的日期
-- 如'2017-11-25' 为2017年11月25日
alter table userbehavior add dates varchar(255);
给新列dates赋值
update userbehavior
set dates = FROM_UNIXTIME(timestamp,'%Y-%m-%d');
给表添加一列叫hours 字段,用于记录行为发生的小时时间
-- 如'21'为晚上9点
alter table userbehavior add hours varchar(255);
给新列hours赋值
-- 特别注意,此处的时间格式中“小时”部分的字符需要用大写的H,才能转为24小时制
update userbehavior
set hours = hour(FROM_UNIXTIME(timestamp,'%H:%i:%s'));
给表添加一列叫datetime,用于记录行为发生的日期时间
-- 如'2017-11-25 21:30:00' 为2017年11月25日晚上9点30分
alter table userbehavior add datetime varchar(255);
给新列datetime赋值
update userbehavior
set datetime = FROM_UNIXTIME(timestamp,'%Y-%m-%d %H:%i:%s');
给表添加一列叫weekday,用于记录行为发生在星期几
-- 如'1' 为星期一
alter table userbehavior add weekday varchar(255);
给新列weekday赋值
/*
- mysql中,可以通过函数 WEEKDAY() 将日期转为“星期几”,但是索引是从0开始,
即0表示星期一、1表示星期二...
- 为了使该字段更符合阅读习惯,可以将其进行加1操作,结果即为1对应星期一,
2对应星期二...
*/
update userbehavior
set weekday = WEEKDAY(datetime)+1;
日期转换结果如图所示:

4、删除超出时间范围的数据

delete 
from userbehavior
where dates < '2017-11-25' or dates > '2017-12-03';
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android自定义控件Path贝塞尔曲线 这篇文主要说Path绘制曲线,就是曲线中非常有名的贝赛尔曲线。 贝赛尔...
    幽默人生_0837阅读 686评论 1 1
  • 每天分享一本书。 今天我给大家分享的书:《卡片笔记写作法:如何实现从阅读到写作》。 德国著名学者卢曼基于学习心理学...
    树毛竹阅读 690评论 0 3
  • 奥地利心理学家阿尔弗雷德.阿德勒是我喜欢的作家,无疑。 如果你不知道他,那我就从弗洛伊德讲起。 你们都知道弗洛伊德...
    翩翩自留地阅读 211评论 2 2
  • 表情是什么,我认为表情就是表现出来的情绪。表情可以传达很多信息。高兴了当然就笑了,难过就哭了。两者是相互影响密不可...
    Persistenc_6aea阅读 126,050评论 2 7
  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,104评论 0 4