我有两个pyspark(1.6.2)数据框架
df1 = spark.range(3).toDF("c1")
df2 = spark.range(5,8).toDF("c2")
如何创建第三个数据框
我知道加入和Unionall。不工作。
我不确定为什么您至少没有参考即可加入?如果要添加多个列,则应使用withColumn
-我认为您正在尝试做不正确的事情。如果您真的想这样做
import pyspark.sql.functions as F
from pyspark.sql import Window
df1 = df1.select("c1",F.row_number().over(Window.orderBy("c1")).alias("dummy_id"))
df2 = df2.select("c2",F.row_number().over(Window.orderBy("c2")).alias("dummy_id"))
df1.join(df2, "dummy_id").drop("dummy_id").show()
做你想要的 - 但是我仍然相信你想要的不是最佳的。