Scala 如何创建第三列包含按第一个数据帧id过滤的第二个数据帧数组的其他数据帧?
我有两个带有人地址的数据帧。 表包含可靠的地址源和其他不受信任的地址源。 我们想知道地址是真人的可证明性是什么 我正在使用Spark 1.5 我有两个数据帧: DF1Scala 如何创建第三列包含按第一个数据帧id过滤的第二个数据帧数组的其他数据帧?,scala,apache-spark,hive,Scala,Apache Spark,Hive,我有两个带有人地址的数据帧。 表包含可靠的地址源和其他不受信任的地址源。 我们想知道地址是真人的可证明性是什么 我正在使用Spark 1.5 我有两个数据帧: DF1 COL1 | COL2 00001 | Street 1 00001 | Street 2 00002 | Street 1 00002 | Street 2 00002 | Street 1 COL1 | COL2 00001 | Street 1 00001 | S
COL1 | COL2
00001 | Street 1
00001 | Street 2
00002 | Street 1
00002 | Street 2
00002 | Street 1
COL1 | COL2
00001 | Street 1
00001 | Street 2
00001 | Street 2
00001 | Street 2
00002 | Street 1
00002 | Street 2
00002 | Street 1
DF2
COL1 | COL2
00001 | Street 1
00001 | Street 2
00002 | Street 1
00002 | Street 2
00002 | Street 1
COL1 | COL2
00001 | Street 1
00001 | Street 2
00001 | Street 2
00001 | Street 2
00002 | Street 1
00002 | Street 2
00002 | Street 1
我的问题是如何转换为这个数据帧/地图/其他?我的意思是转换成如下代码
COL1 | COL2 | COL3 (Array or Vector)
00001 | Street 1 | [00001 | Street 1, 00001 | Street 2, 00001 | Street 2, 00001 | Street 2]
00001 | Street 2 | [00001 | Street 1, 00001 | Street 2, 00001 | Street 2, 00001 | Street 2]
00002 | Street 1 | [00002 | Street 1, 00002 | Street 2, 00002 | Street 1]
00002 | Street 2 | [00002 | Street 1, 00002 | Street 2, 00002 | Street 1]
00002 | Street 1 | [00002 | Street 1, 00002 | Street 2, 00002 | Street 1]
最后一个表只是一个示例,我需要独立于文件格式表连接两个数据帧。我们需要处理第三个表的数据以获取统计信息。我已经使用spark 1.6尝试了下面的代码 假设COL1是一个字符串,我编写了这个解决方案 步骤:
DF1
转换为RDD[(字符串,字符串)]DF2
byCOL1
Step-1
的结果与Step-2