当前位置:首页 > 时尚生活

cohort R语言数据分析笔记——Cohort 存留分析

杜宇,EasyCharts团队成员,R语言中文社区专栏作家

他的兴趣是:Excel业务图,R语言数据可视化,地理信息数据可视化。

个人微信官方账号:“数据立方”创始人:数据立方(微信ID: datamofang)。

推荐课程:系统全面,有调性!r语言可视化&商业图表实践课程

相信经常做数据分析的同学都听过队列分析,尤其是互联网运营,用来分析客户留存等场景。以前这种分析大多是借助SQL+Excel来完成的。

最近在尝试学习队列用户持久化分析的时候,发现了国外数据分析爱好者队列用户持久化分析的Python版本完整代码,并认真提供了实践数据。作为一个比Python更熟练的菜鸟分析师,他自然想到了如何先把这段代码翻译成R版本。

http://www . gregrereda . com/2015/08/23/queue-analysis-with-python/

最后,功夫一整天都在忙着用R语言代码还原《队列分析》的R语言版。在这里和大家分享一下。代码不好,请见谅。只是个演示,还没打包。

库(' xlsx ')库(' ggplot2 ')库(' dplyr ')库(' magrittr ')库(' tidyr ')库(' reshape2 ')

1.数据导入:

setwd(" D:/R/File/")df & lt;- read.xlsx('relay-foods.xlsx ',sheetName = 'Purchase Data ')

2.数据清理:

保留分析中使用的字段只有购买日期、用户id和其他信息。分析月留存,需要将日期标准化成月表,同时按照客户ID分组,计算出用户的首次购买日期。代码如下:

2.1创建购买月份字段

df $ order period = format(df $ order date,' % y-%m') #购买日期

2.2创建用户的首次购买字段

CohortGroup = df %>。% group _ by(UserID)% & gt;% summary(cohort group = min(order date))#计算用户的首次购买日期cohortgroup $ cohortgroup

2.3分组计算用户总数、订单总数、支付总额(根据首次购买日期、购买日期)(用户ID需重复)

合唱团<。- df %>。% group_by(CohortGroup,order period)% gt;% summary(UserId = n _ distinct(UserId),OrderId = n_distinct(OrderId),total charges = sum(total charges))% & gt;%重命名(合计用户=用户标识,合计订单=订单标识)

2.4根据用户标识分组,并根据购买日期和月份添加连续标签

合唱团<。-合唱% >;%排列(合作组,订单周期)% >;% group _ by(CohortGrouP)% & gt;% mutate(CohortPeriod = row _ number())

3.计算当月购买的新用户数量

群组大小<。-合唱% >;% filter(CohortPeriod = = 1)% & gt;% select(合作组、订购期、总用户)user _ retention & lt-合唱% >;%选择(合作组、合作周期、总用户)% & gt百分比分布(cow组,总用户数)#将长表转换为宽表#将特定用户转换为基准月user _ retention的比率[,-1]

宽桌子到长桌子

user_retention1 <。- user_retention %>;% select(1:5) % >% melt(id . vars = ' CoortPeriod ',variable.name = ' CohortGroup ',value.name = 'TotalUsers ')

4.保留曲线

ggplot(user_retention1,AES(Cohortperium,TotalUSers))+geom _ line(AES(group = Cohortpgroup,color = Cohortpgroup))+scale _ x _ continuous(breaks = 1:15)+scale _ colour _ brewer(type = ' div ')

最终保留热图的数据源:

user _ retentionT & lt- t(user_retention) % >% .[2:nrow(。),]% & gt;% as . data . frame user _ retention $ COORTERperiod & lt;-row . names(user _ retention)row . names(user _ retention)& lt;-NullUser _ retention & lt;-user _ retention ont[,c(16,1:15)]user _ retention t1 & lt;-user _ retention % & gt;% melt(id . vars = ' CoortPeriod ',variable.name = ' CohortGroup ',value.name = 'TotalUsers ')

5.保留分析的热图表:

library(" Cairo ")library(" show text ")font _ add(" my font "," msyh . TTC ")CairoPNG(" C:/Users/LEIGU/Desktop/emoji 1 . png "/>

生存分析是互联网数据分析应用中经常用到的分析工具。本节中的R代码源自文章开头的Python代码的思想。你可以比较两者的优劣,作为以后分析的参考资料。

写在最后:

如果你想深入学习ggplot2,但是苦于平时的学习和工作繁忙,没有时间去研究浩如烟海的源文档,那么没关系。最近这个小系列花了很大力气仔细整理了一些自己的经验,学习ggplot2过程中的经验和模仿入坑指南。现已成功推出R语言ggplot2可视化视频课程,由天山智能独家发行。希望这个课程能给你带来R语言数据的可视化学习。

最后八小时,唯一优惠!

点击阅读全文,立即加入课程!

不要让对手超过你!

1.《cohort R语言数据分析笔记——Cohort 存留分析》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《cohort R语言数据分析笔记——Cohort 存留分析》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/shehui/1280185.html

上一篇

隐形飞机克星量子雷达将可看透一切

下一篇

济青高速南线 刚刚!济青高速正式通车!限速120!(多图)

吉林长春小石头 合肥文博会:全新IP"小石头"首次亮相 安徽省地质博物馆"网红"产品来袭

吉林长春小石头 合肥文博会:全新IP"小石头"首次亮相 安徽省地质博物馆"网红"产品来袭

博物馆热继续升温。从故宫到苏州博物馆,今年又掀起了博物馆的大浪潮。那么,把博物馆带到ICIF会是怎样的体验?记者了解到,在今年的文化博览会上,可以看到来自全国各地的23家博物馆带来的文化创意产品,观众不仅可以欣赏到具有历史感和民族风格的展品,还可以体验到从历史到现代的旅程空,还...

小石头网红 合肥文博会:全新IP"小石头"首次亮相 安徽省地质博物馆"网红"产品来袭

小石头网红 合肥文博会:全新IP"小石头"首次亮相 安徽省地质博物馆"网红"产品来袭

博物馆热继续升温。从故宫到苏州博物馆,今年又掀起了博物馆的大浪潮。那么,把博物馆带到ICIF会是怎样的体验?记者了解到,在今年的文化博览会上,可以看到来自全国各地的23家博物馆带来的文化创意产品,观众不仅可以欣赏到具有历史感和民族风格的展品,还可以体验到从历史到现代的旅程空,还...

WiFi万能钥匙:这款软件专偷WIFI密码 全球用户超9亿

WiFi万能钥匙:这款软件专偷WIFI密码 全球用户超9亿

多家国家机关金融机构WiFi密码被窃 9亿用户如“裸奔”重大预警!多家国家机关、金融机构WiFi密码被窃,9亿用户如同“裸奔”WiFi全称叫做无线保真,和蓝牙一样,属于在办公室和家庭中使用的短距离无线通讯技术。一般来说,消费者都是自己花钱购买WiFi设备,缴纳电信的流量费用,设置属于自己的...

数据可视化的工具 几款好用的数据可视化工具

可视化工具 几款好用的数据可视化工具

数据可视化工具 几款好用的数据可视化工具

何炅王菁 何炅首次公开女朋友,万万没有想到这位神秘女神,竟然会是她?

  • 何炅王菁 何炅首次公开女朋友,万万没有想到这位神秘女神,竟然会是她?
  • 何炅王菁 何炅首次公开女朋友,万万没有想到这位神秘女神,竟然会是她?
  • 何炅王菁 何炅首次公开女朋友,万万没有想到这位神秘女神,竟然会是她?

何炅女朋友 何炅首次公开女朋友,万万没有想到这位神秘女神,竟然会是她?

  • 何炅女朋友 何炅首次公开女朋友,万万没有想到这位神秘女神,竟然会是她?
  • 何炅女朋友 何炅首次公开女朋友,万万没有想到这位神秘女神,竟然会是她?
  • 何炅女朋友 何炅首次公开女朋友,万万没有想到这位神秘女神,竟然会是她?