我的df1有Double类型的列,df2有Timestamp类型的列,df3有Integer类型的列。
我试图达到这样的目标:
df1 = ...
df2 = ...
df3 = ...
val df4 = df1.zip(df2).zip(df3)
然而,没有像" zip"这样的功能。我如何存档这样的结果?
答案 0 :(得分:0)
DataFrames没有明确的zip。你可以解决方法:
val df1Ordered = df1.withColumn("rowNr", row_number().over(Window.orderBy('someColumn));
// the same for other DataFrames
// now join those DataFrames
val newDF = df1Ordered.join(df2Ordered, "rowNr").join("df3Ordered", "rowNr")
但是它会很慢,因为Window操作中没有partitionBy
。