Как проверить, какие строки в фрейме данных существуют в другом фрейме быстрее, чем объединение? - PullRequest
0 голосов
/ 07 февраля 2019

Я использую Spark 2.4 с Scala 2.11.8, и у меня есть 2 кадра данных с одинаковыми столбцами.Я хочу проверить, существует ли строка для моего первого информационного кадра во втором информационном кадре.Стоит отметить, что если одна строка со значением 1 2 в двух столбцах совпадает со строкой со значениями 2 1 во втором столбце данных.Я попытался сделать эту проверку с помощью sql и join.Мой код показан ниже:

val truePositives = originalGraphDF.as("g").join(pairs.as("p"),
  ($"g.nodeA_id" === $"p.nodeA_id" && $"g.nodeB_id" === $"p.nodeB_id") || ($"g.nodeA_id" === $"p.nodeB_id" && $"g.nodeB_id" === $"p.nodeA_id")
).cache().count()

Мне нужен этот процесс, чтобы найти True Positives для оценки модели машинного обучения без присмотра.Есть ли более быстрый способ сделать это?

Спасибо

...