更新时间:2023-07-12 来源:黑马程序员 浏览量:
在main()方法中,首先使用filter()算子过滤aggregationRDD每一行数据中行为类型为加入购物车和购买的数据,只保留行为类型为查看的数据,然后使用mapToPair()算子对过滤结果进行转换,获取每一行数据中品类被查看次数和品类ID数据,最终将转换结果加载到getViewCategoryRDD.具体代码如下。
JavaPairRDD<String, Integer> getViewCategoryRDD=aggregationRDD .filter (new Function<Tuple2<Tuple2<String, String>, Integer> , Boolean> () { @override public Boolean call(Tuple2<Tuple2<String;String> , Integer> tuple2) throws Exception { //获取行为类型 String action =tuple2._1._2; return action.equals("view"); } }).mapToPair( new PairFunction<Tuple2<Tuple2<String, String> , Integer>, String, Integer>() { @override public Tuple2<String, Integer> call(Tuple2<Tuple2<String, String>, Integer> tuple2) throws Exception { return new Tuple2<> (tuple2._1._1:tuple2 ._2): } });
上述代码中,第9行通过equals()方法判断获取的行为类型是否为view(查看)并将判断城果作为返回值,若返回值为True则进行后续转换操作。
在main()方法中,首先使用filter()算子过滤aggregationRDD每一行数据中行为类型为查看和购买的数据,只保留行为类型为加入购物车的数据,然后使用mapToPair()算子对过滤结果进行转换,获取每一行数据中品类被加入购物车次数和品类ID数据,最终将转换结果加载到getCartCategoryRDD,具体代码如下。
JavaPairRDD<String,Integer> getCartCategoryRDD =aggregationRDD .filter (new Function<Tuple2<Tuple2<String, String>, Integer> , Boolean>() { @override public Boolean call(Tuple2<Tuple2<String, String> , Integer> tuple2) throws Exception { String action =tuple2._1._2: return action.equals("cart"): } }).mapToPair(new PairFunction<Tuple2<Tuple2<String, String> ,Integer>,String,Integer>(){ @oerride public Tuple2<String, Integer> call (Tuple2<Tuple2<String, String>, Integer> tuple2) throws Exception { return new Tuple2<> (tuple2._1._1,tuple2._2); } }):
上述代码中,第9行通过equals()方法判断获取的行为类型是否为view(查看)并将判断城果作为返回值,若返回值为True则进行后续转换操作。
在main()方法中,首先使用filter()算子过滤aggregationRDD每一行数据中行为类型为查看和购买的数据,只保留行为类型为加入购物车的数据,然后使用mapToPair()算子对过滤结果进行转换,获取每一行数据中品类被加入购物车次数和品类ID数据,最终将转换结果加载到getCartCategoryRDD,具体代码如下。
JavaPairRDD<String,Integer> getCartCategoryRDD =aggregationRDD .filter(new Function<Tuple2<Tuple2<String, String>, Integer> , Boolean>() { @override public Boolean call(Tuple2<Tuple2<String, String> , Integer> tuple2) throws Exception { String action =tuple2._1._2: return action.equals("cart"): } }).mapToPair(new PairFunction<Tuple2<Tuple2<String, String> ,Integer>,String,Integer>(){ @oerride public Tuple2<String, Integer> call (Tuple2<Tuple2<String, String>, Integer> tuple2) throws Exception { return new Tuple2<> (tuple2._1._1,tuple2._2); } });
上述代码中,第8行通过equals()方法判断获取的行为类型是否为cart(加入购物车)并将判断结果作为返回值,若返回值为True则进行后续转换操作。
使用filter()算子过滤aggregationRDD每一行数据中行为类型为查看和加入购物车的数据,只保留行为类型为购买的数据,然后使用apToPair()算子对过滤结果进行转换,获取每一行数据中品类被购买次数和品类ID数据,最终将转换结果加载到getPurchaseCategoryRDD,具体代码如下。
上述代码中,第8行通过equals()方法判断获取的行为类型是否为purchase(购买)并将判断结果作为返回值,若返回值为True则进行后续转换操作。
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19