2016-10-05 14 views

回答

2

我沒有找到另一種方式比UDF,令人驚訝的

def catArray[A](a:Seq[A], b: Seq[A]): Seq[A] = a ++ b 
val catArrayUdf = udf { catArray[Int] _ } 

然後

scala> sc.parallelize(List((Seq(1,2),Seq(3,4)))) 
    .toDF("A","B") 
    .withColumn("cat",catArray('A,'B)) 
    .show(false) 
+------+------+------------+ 
|A  |B  |cat   | 
+------+------+------------+ 
|[1, 2]|[3, 4]|[1, 2, 3, 4]| 
+------+------+------------+ 

也許有定義一個較短的方式雖然UDF基於++

+0

感謝Wilmerton。我現在正在嘗試。 –

+0

解決了它。再次感謝。 –

相關問題