按元组的第3个元素排序,然后按第一个元素分组并分配等级

shahharsh2603

我是apache-spark和scala的新手,如果这是一个小问题,我深表歉意。

我正在尝试建立一个推荐系统,并具有形式(用户,产品,预测等级)的RDD。

我要实现的目标:

按用户分组,我想要一个产品列表(按等级从高到低排序),并基于该列表(针对每个用户)为预测分配等级。谁能告诉我我将如何实现这一目标?

下面的代码显然不起作用,但这就是我想要达到的目的

val xyz = ratesAndPreds.map{case ((user,product),(r1,r2)) => (user,product,r2)}

val def = xyz.sortBy(_._3)

val abc = abc.groupByKey()

任何帮助将不胜感激。

j

这应该够了吧:

val groupedByUser = xyz.groupBy(_._1)
val sortedProductsByUser = groupedByUser mapValues { triples =>
  // this is done for every user, for its list of (user, product, rating)
  // (yes, user is thus the same for all the elements of triples here)
  val sortedTriples = triples.sortBy(_._3) // assuming rating has an Ordering, e.g., it's an Int
  val keepOnlyProducts = sortedTriples.map(_._2)
  keepOnlyProducts
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在C中按对的第一个元素然后按对的第二个元素对对的向量进行排序

来自分类Dev

如何按元组中的第一个元素对元组列表进行排序?

来自分类Dev

Python3:按相反的第一个元素排序元组列表->如果相同,则按字母顺序按第二个元素排序

来自分类Dev

如何按数组的第一个元素分组?

来自分类Dev

按第一个元素分组数组

来自分类Dev

如何按linq查询对组中的元素进行排序,然后选择第一个?

来自分类Dev

python按两列分组,按一个索引提取第一个元素

来自分类Dev

Python按第一个元素的最大值,然后第二个元素的最小值排序

来自分类Dev

Python按第一个元素的最大值,然后第二个元素的最小值排序

来自分类Dev

在地图中按一个字段排序,然后按另一个字段删除元素?

来自分类Dev

如何仅按第一个元素对2D ArrayList <String>进行排序

来自分类Dev

按ID排序的SQLiteDatabase跳过第一个元素

来自分类Dev

如何按第一个元素对列表进行排序

来自分类Dev

Python:如何按最常见的第一个元素对列表进行排序?

来自分类Dev

Linq:按日期排序并找到第一个元素

来自分类Dev

按内部列表的第一个元素对列表列表进行排序(Java或groovy)

来自分类Dev

将两个列表按其第一个元素排序,然后将它们压缩在scala中

来自分类Dev

按数据框进行分组和排序,然后根据条件找到第一个匹配项

来自分类Dev

查找用户选择的第一个唯一项,然后按用户选择的日期对它们进行排序

来自分类Dev

Haskell-内置元组,其中Ord定义为仅按第一个元素进行比较?

来自分类Dev

SQL查询按2列分组并采用第3列的第一个匹配项

来自分类Dev

如何在不依赖于第一个属性的情况下按属性先按属性然后按另一个属性对集合进行排序?

来自分类Dev

Haskell - 按最后一个元组元素对元组列表进行排序

来自分类Dev

按值对json进行排序,然后提取第一个值

来自分类Dev

在C#中按其第一个元素的升序对2D数组行进行排序

来自分类Dev

Python:如何按最常见的第一个元素对列表列表进行排序?

来自分类Dev

使用键作为字符串,按哈希的第一个元素对哈希数组进行排序

来自分类Dev

Python:基于第一个元素对数组中的元组进行排序

来自分类Dev

在列表中删除元组的第一个元素

Related 相关文章

  1. 1

    在C中按对的第一个元素然后按对的第二个元素对对的向量进行排序

  2. 2

    如何按元组中的第一个元素对元组列表进行排序?

  3. 3

    Python3:按相反的第一个元素排序元组列表->如果相同,则按字母顺序按第二个元素排序

  4. 4

    如何按数组的第一个元素分组?

  5. 5

    按第一个元素分组数组

  6. 6

    如何按linq查询对组中的元素进行排序,然后选择第一个?

  7. 7

    python按两列分组,按一个索引提取第一个元素

  8. 8

    Python按第一个元素的最大值,然后第二个元素的最小值排序

  9. 9

    Python按第一个元素的最大值,然后第二个元素的最小值排序

  10. 10

    在地图中按一个字段排序,然后按另一个字段删除元素?

  11. 11

    如何仅按第一个元素对2D ArrayList <String>进行排序

  12. 12

    按ID排序的SQLiteDatabase跳过第一个元素

  13. 13

    如何按第一个元素对列表进行排序

  14. 14

    Python:如何按最常见的第一个元素对列表进行排序?

  15. 15

    Linq:按日期排序并找到第一个元素

  16. 16

    按内部列表的第一个元素对列表列表进行排序(Java或groovy)

  17. 17

    将两个列表按其第一个元素排序,然后将它们压缩在scala中

  18. 18

    按数据框进行分组和排序,然后根据条件找到第一个匹配项

  19. 19

    查找用户选择的第一个唯一项,然后按用户选择的日期对它们进行排序

  20. 20

    Haskell-内置元组,其中Ord定义为仅按第一个元素进行比较?

  21. 21

    SQL查询按2列分组并采用第3列的第一个匹配项

  22. 22

    如何在不依赖于第一个属性的情况下按属性先按属性然后按另一个属性对集合进行排序?

  23. 23

    Haskell - 按最后一个元组元素对元组列表进行排序

  24. 24

    按值对json进行排序,然后提取第一个值

  25. 25

    在C#中按其第一个元素的升序对2D数组行进行排序

  26. 26

    Python:如何按最常见的第一个元素对列表列表进行排序?

  27. 27

    使用键作为字符串,按哈希的第一个元素对哈希数组进行排序

  28. 28

    Python:基于第一个元素对数组中的元组进行排序

  29. 29

    在列表中删除元组的第一个元素

热门标签

归档