需求:根据下列不同省份的商品点击数据完成对不同省份商品的点击总数进行统计并按升序进行排序输出。难度指数★★★★说明:数据存放到 Map 集合中具体格式如下:Map吉林玉米2 吉林袜子10 河南山药18 河南鞋3 河南衣服9 河北箱包11 河北鸭梨5 吉林木耳7 输出结果:Map河南 - 30 吉林 - 19 河北 - 16List河北16 吉林19 河南30提示:① 进行原始数据格式的转换通过模式
// 原始数据 val data = Map((("吉林","玉米"),2), (("吉林","袜子"),10), (("河南","山药"),18), (("河南","鞋"),3), (("河南","衣服"),9), (("河北","箱包"),11), (("河北","鸭梨"),5), (("吉林","木耳"),7))
// 转换数据格式,加入点击数量 val newData = data.map{case ((province, product), clicks) => (province, product, clicks)}
// 按省份进行分组 val groupedData = newData.groupBy(_._1)
// 统计每个省份所有商品点击数量的总数 val totalClicks = groupedData.mapValues(.map(._3).sum)
// 对结果进行升序排序 val sortedResult = totalClicks.toList.sortBy(_._2)
println(totalClicks) println(sortedResult
原文地址: https://www.cveoy.top/t/topic/c8un 著作权归作者所有。请勿转载和采集!