一、项目背景
1.背景
本项目主要内容为分析淘宝用户的行为,结合AARRR模型帮助我们理解用户行为,挖掘出用户这些行为背后的信息,为电商平台的用户运营提供合理化建议。
2.数据说明
本项目数据集为user_action.xlsx,各字段含义如下:
字段名称 |
字段解释 |
user_id |
用户名称 |
item_id |
商品名称 |
behavior_type |
行为类型 |
item_category |
商品类别 |
time |
时间 |
其中行为类型分为1,2,3,4,4种类型,在淘宝用户行为中分别指代浏览、收藏、加购、购买四种行为。值得注意的是“time”列是日期和小时的组合,因此在对数据进行处理时要将“time”拆分成“date”与“hour”。
二、数据处理
1.首先将user_action.xlsx导入到R中。
> install.packages("readxl")#R语言读取.xlsx文件需要加载readxl安装包
> library(readxl)
> da<-read_xlsx("C:/Users/86188/Desktop/user_action.xlsx")
> View(da)
该数据集中共有5组变量,1048575条数据。
2.检查数据中是否有重复数据,删除重复数据。
> sum(duplicated(da))#检查有多少条重复数据
> dr<-duplicated(da)
> da<-da[!dr,]#删除重复数据后的数据
根据运行结果,一共有77388条重复数据 。将这些重复数据删除后得到的新的数据集有971187条数据。
3.检查数据中是否有缺失值。
> sum(is.na(da))#计算数据中有多少个缺失值
根据运行结果,没有缺失值,这说明数据的准确性和可靠性很高。
4.提取数据
因为数据数量太大,为了方便分析,我们选择该数据集中的前10万条数据进行分析。
> da<-da[1:100000,]
在之前的数据说明中我们提到,要将数据中“time”列拆分成“date”和“hour”两列,代表日期和小时。
> library(stringr)
> da<-cbind(da,str_split_fixed(da$time," ",2))#将time拆分成两列
> colnames(da)[6:7]<-c("date","hour")#把拆分得到的两列命名为date和hour
> da<-da[,-which(names(da) == "time")]#删除原time列
> head(da)
运行结果:
三、数据分析
3.1用户行为分析
在分析用户行为部分,主要基于AARRR模型和漏斗模型。AARRR模型是做用户行为分析的经典模型,是一个典型的漏斗结构。模型的名字是五个名词的首字母,分别为获取(Acquisition)、激活(Activation)、留存(Retention)、收入(Revenue)和传播(Referral)。
3.1.1常见电商指标
常见的电商指标有访问用户总数(UV)、页面总访问量(