如果我们有 model.approxSimilarityJoin 的数据框输出
val results =
model
.approxSimilarityJoin(vectorizedDf, vectorizedDf, threshold)
.filter("distCol != 0")
.filter("distCol < 0.2")
.select(col("datasetA.title").alias("idA"), col("datasetB.title").alias("idB"), col("distCol"))
上述命令的输出
**idA|idB|distCol**
A|B|0.125
B|C|0.125
A|D|0.125
D|E|0.125
F|G|0.125
X|Y|0.19
A|M|0.14
A|N|0.14
我们希望对输出进行分组并计算相似的项目,即在上面的示例中我们有
A, B, C, D, E
F,G
X,Y
所需的最终输出应如下所示:
A, 0.125, 5
F, 0.19, 1
A, 0.14, 2