一个rdd是包含id和向量的列表
现在需要将其中的每一项分别和余下的项计算
也就是做一个余弦相似度运算
但是rdd又不能互相嵌套
比如:
vectorRDD.foreach(v1=>{
vectorRDD.foreach(v2=>{
println(cosDistance(v1._2,v2._2))
})
})
是不行的
如何做呢?
一个rdd是包含id和向量的列表
现在需要将其中的每一项分别和余下的项计算
也就是做一个余弦相似度运算
但是rdd又不能互相嵌套
比如:
vectorRDD.foreach(v1=>{
vectorRDD.foreach(v2=>{
println(cosDistance(v1._2,v2._2))
})
})
是不行的
如何做呢?
2 回答4.3k 阅读✓ 已解决
4 回答4.2k 阅读
2 回答1.7k 阅读✓ 已解决
4 回答2.5k 阅读✓ 已解决
7 回答1.8k 阅读
1 回答4.1k 阅读✓ 已解决
2 回答2.1k 阅读✓ 已解决
已解决:
先用
collect
把RDD
转为Array
再用
for
循环嵌套一下