当前位置: 首页 > news >正文

网站制作的一般步骤是什么便捷网站建设费用

网站制作的一般步骤是什么,便捷网站建设费用,南宁网站备案,seo链接优化建议需求说明 页面单跳转化率 计算页面单跳转化率#xff0c;什么是页面单跳转换率#xff0c;比如一个用户在一次 Session 过程中访问的页面路径 3,5,7,9,10,21#xff0c;那么页面 3 跳到页面 5 叫一次单跳#xff0c;7-9 也叫一次单跳#xff0c; 那么单跳转化率就是要统计…需求说明 页面单跳转化率 计算页面单跳转化率什么是页面单跳转换率比如一个用户在一次 Session 过程中访问的页面路径 3,5,7,9,10,21那么页面 3 跳到页面 5 叫一次单跳7-9 也叫一次单跳 那么单跳转化率就是要统计页面点击的概率。 比如计算 3-5 的单跳转化率先获取符合条件的 Session 对于页面 3 的访问次数PV 为 A然后获取符合条件的 Session 中访问了页面 3 又紧接着访问了页面 5 的次数为 B 那么 B/A 就是 3-5 的页面单跳转化率。 功能实现 数据准备 // TODO : Top10热门品类val sparkConf new SparkConf().setMaster(local).setAppName(HotCategoryTop10Analysis)val sc new SparkContext(sparkConf)val actionRDD sc.textFile(data/user_visit_action.txt) data/user_visit_action.txt  定义一个用户访问动作类 case class UserVisitAction(date: String,//用户点击行为的日期user_id: Long,//用户的 IDsession_id: String,//session 的 IDpage_id: Long,//某个页面的 IDaction_time: String,//动作的时间点search_keyword: String,//用户搜索的关键词click_category_id: Long,//某一个商品品类的 IDclick_product_id: Long,//某一个商品的 IDorder_category_ids: String,//一次订单中所有品类的 ID 集合order_product_ids: String,//一次订单中所有商品的 ID 集合pay_category_ids: String,//一次支付中所有品类的 ID 集合pay_product_ids: String,//一次支付中所有商品的 ID 集合city_id: Long //城市 id) 然后将每行数据封装成UserVisitAction对象运用map转换算子 val actionDateRDD actionRDD.map( //每行数据封装成UserVisitAction对象action {val datas action.split(_)UserVisitAction(datas(0),datas(1).toLong,datas(2),datas(3).toLong,datas(4),datas(5),datas(6).toLong,datas(7).toLong,datas(8),datas(9),datas(10),datas(11),datas(12).toLong)}) 由于统计所有的页面跳转数据量过于庞大这里就指定一下 //TODO 对指定页面连续跳转进行统计//1-2,2-3,3-4,4-5,5-6,6-7val ids List[Long](1, 2, 3, 4, 5, 6, 7)val okflowIds ids.zip(ids.tail) //List((1, 2), (2, 3), (3, 4), (4, 5), (5, 6), (6, 7)) 接下来统计每个页面的被查看的次数也就是分母actionDateRDD里面封装的是一个个UserVisitAction对象运用filter转换算子过滤出List所包含的页面再用map转换算子将一个UserVisitAction对象转换成(action.page_id, 1L)便于后续的reduceByKey作统计而toMap方法是将RDD中的数据转换为一个Map对象需要将所有的数据收集到Driver端并在Driver端构建Map对象。因此需要使用collect方法将RDD中的数据拉取到Driver端的内存中以便在Driver端进行toMap操作。 //TODO 计算分母(计算每个页面的被查看的次数)val pageidToCountMap actionDateRDD.filter( //过滤出List里面的页面action {ids.contains(action.page_id)}).map(action {(action.page_id, 1L)}).reduceByKey(_ _).collect().toMapprintln(pageidToCountMap: )pageidToCountMap.foreach(println) 接下来统计分子首先根据session_Id进行分组: val sessionRDD actionDateRDD.groupBy(_.session_id) 再将UserVisitAction对象根据访问时间action_time排序然后用map算子只保留对象的page_id,再用zip拉链 val mvRDD sessionRDD.mapValues(iter {val sortList iter.toList.sortBy(_.action_time)val flowIds sortList.map(_.page_id)val pageflowIds flowIds.zip(flowIds.tail) 将不满足条件的页面跳转进行过滤 val mvRDD sessionRDD.mapValues(iter {val sortList iter.toList.sortBy(_.action_time)val flowIds sortList.map(_.page_id)val pageflowIds flowIds.zip(flowIds.tail)//将不合法的页面跳转进行过滤pageflowIds.filter(t{okflowIds.contains(t)}).map(t {(t, 1)})}) mvRDD大致格式长这样 sessionid对于我们来说没有用只需计算后面的页面跳转内容即可用map算子处理再用flatmap扁平化处理便于后续的reduceByKey聚合: //((1,2),1)val flatRDD mvRDD.map(_._2).flatMap(list list)//((1,2),sum)val dataRDD flatRDD.reduceByKey(_ _) 最终计算 //计算单跳转换率 分子/分母dataRDD.foreach{case ((page1,page2),sum){val cnt pageidToCountMap.getOrElse(page1, 0L)println(s页面${page1}到页面${page2}单跳转换率为 (sum.toDouble/cnt))}}
http://www.hkea.cn/news/14373353/

相关文章:

  • 有哪些做企业网站的教学互动网站开发背景
  • 潍坊网站制作最低价格wordpress制作分类层级
  • 中国建设银行北京招聘信息网站河北seo网站设计
  • 网站空间多少钱东莞网站推广团队
  • 西安网站建设哪家专业网站软文推广网站
  • 企业网站开发前台模块设计网站代码模板免费
  • 10个网站做站群wordpress ckeditor
  • 怎么做微信小程序游戏wordpress网站怎么优化
  • 2016建设银行辽宁招聘网站重庆做网站建设的公司
  • 企业网站管理系统多站多语言版wordpress百度提交插件
  • 怎么制作个人求职网站北京正规网站建设比较
  • 网站怎样改logo满城建设局官方网站
  • 微信公众号手机网站时尚杂志排版设计
  • 口腔医院网站建设松岗做网站联系电话
  • 安宁网站建设与制作做3d效果在哪个网站
  • 爱做网站房产中介公司网站源码
  • wordpress apk 中文版手机清理优化软件排名
  • ps制作网站首页界面大连龙彩科技的网站在谁家做
  • 郑州网站建设价格西安做网站 怎样备案
  • 婚介网站方案wordpress 图片加边框
  • led网站模板曙光建设有限公司网站
  • 静态网站 后台外网下载
  • 蓝色 网站网站空间1g多少钱一年
  • 铜陵建设网站网站建设分录
  • 网站海外seo做软件营销网站怎么样
  • 营销型网站建设可视方便建站微网站
  • 淘宝加盟网站建设做网站的人多吗
  • 营销网站建设的公司网页升级请记住新域名
  • 自己做的网站字体变成方框网页制造与网站建设论文
  • 做网站要和企业logo烟台网络推广引流