2017-06-21 142 views
0

我有四个数组包含来自四个数据框的列名称。如何识别Scala Spark中两个数组之间的交集?

var col1 = df1.columns 
var col2 = df2.columns 
var col3 = df3.columns 
var col4 = df4.columns 

它们都是Array [String]。现在的问题是确定那些在所有4个数组中经常出现的列,而那些不是。 我想可以从找到两个数组的交集开始,然后循环它。有任何想法吗 ?我们可以将它扩展到N维数组。

这样的想法是不只是识别路口对面两个数组,但多个阵列,并找出差异

+2

不是真的这个问题的重复 - OP似乎有兴趣相交_column names_,而不是他们的实际值 –

+2

可能的重复[比较Scala Spark中的两个数组列](https://stackoverflow.com/questions/44158623/比较两阵列柱合阶火花) – jwvh

回答

2

您可以创建这些阵列的列表,并使用reduceintersect功能:

List(col1, col2, col3, col4).reduce((a, b) => a intersect b) 
相关问题