连接Spark Dataframe N次

时间:2017-03-25 09:16:46

标签: scala apache-spark

我有一个包含N行的数据帧,它只有一列。我想复制它N次并连接。所以最后我想用N ^ 2行创建另一个数据帧。

如何使用Scala实现这一目标?我不想使用for循环等因为N很大。

1 个答案:

答案 0 :(得分:0)

您可以使用折叠功能执行此操作:

(0 until df.count.toInt).foldLeft(df){case (acc,_) => acc.unionAll(df)}.show

唯一的限制是N必须小于Int.Max_Value。希望这会有所帮助:)

您可以使用小df进行测试:

val df = sc.parallelize(List(("r1"),("r2"),("r3"))).toDF("c")