如何将一行与 spark 数据集中的所有其他行进行比较?

Posted

技术标签:

【中文标题】如何将一行与 spark 数据集中的所有其他行进行比较?【英文标题】:How to compare a row with all other rows in spark dataset? 【发布时间】:2017-03-28 10:04:32 【问题描述】:

我有一个从 mysql 加载的 spark 数据集,我想将每一行与数据集中的所有其他行进行比较,并使用获得的结果创建一个新数据集。有什么方法可以实现吗?

【问题讨论】:

你可以看这里:***.com/questions/41252719/…。否则你想做什么样的比较? 【参考方案1】:

您可能想通过匹配行的字段来连接两个数据集。 您可以像这样匹配两个数据集并加入两者

val 结果 = DF1.join(DF2, (DF1("USER_ID") === DF2("USER_ID")) &&(DF1("SESSION_ID") === DF2("SESSION_ID")) &&(DF1 ("日期") === DF2("日期")) .select(DF1("USER_ID"),DF1("SESSION_ID"),DF1("DATE"),DF2("COUNTRY"))

【讨论】:

以上是关于如何将一行与 spark 数据集中的所有其他行进行比较?的主要内容,如果未能解决你的问题,请参考以下文章

将一行中的项目与所有其他行进行比较,并使用 data.table - R 遍历所有行

Kusto:将结果集中的每一行与另一个表进行比较

如何将源文件名添加到 Spark 中的每一行?

如何将表中的每一行与所有行进行比较?

对数据集中每一行的列进行 t.test

无法使用 spark scala 从数据集中的行中获取第一列的值