0903-页面单跳转化率统计
需求五:页面单跳转化率统计
5.1 需求概述
计算给定的页面访问流的页面单跳转化率
5.2 简要运行流程
5.3 具体运行流程
5.4 代码实现
5.4.1 获取用户行为数据
// 1. 获取用户行为数据
val actionRDD: RDD[UserVisitAction] = getOriAction(sparkSession, taskParams)
val sessionId2ActionRDD: RDD[(String, UserVisitAction)] = actionRDD.map(action => (action.session_id, action))
5.4.2 获取目标切片
// 2. 获取目标切片
val targetPageFlowStr: String = taskParams.getString(Constants.PARAM_TARGET_PAGE_FLOW)
val targetPageFlow: Array[String] = targetPageFlowStr.split(",")
// Array(1_2,2_3,3_4,4_5)
val targetPF: Array[String] = targetPageFlow
.slice(0, targetPageFlow.length - 1)
.zip(targetPageFlow.tail)
.map {
case (page1, page2) =>
page1 + "_" + page2
}