【发布时间】:2021-07-05 22:03:20
【问题描述】:
我正在尝试在 Spark Scala 中实现 Kmeans 聚类。
所以目前我有一个看起来像这样的 RDD- 它包含聚类中心和数据点。
scala> res2.collect
res54: Array[(Int, Array[Any])] = Array((2,Array(19, 15, 39)), (2,Array(21, 15, 81)), (2,Array(20, 16, 6)), (1,Array(23, 16, 77)), (2,Array(31, 17, 40)), (3,Array(22, 17, 76)), (1,Array(35, 18, 6)), (3,Array(23, 18, 94)), (1,Array(64, 19, 3)), (1,Array(30, 19, 72)))
我的下一步是根据数组的键对数组进行元素求和,然后将结果除以计数(通过平均来找到新的质心集)。
我不知道如何实现这一点,因为简单地使用 reduceByKey(__+_) 不适用于数组。
【问题讨论】:
标签: scala apache-spark rdd