我想合并 2 個 spark 資料框(scala)。第一個資料框僅包含 1 行。第二個資料框有多行。我想合并這些并將第一個資料幀中的地址/電話列值復制到第二個資料幀中的所有行。有沒有辦法使用 Spark 操作?
DF1
name age address phone
ABC 25 XYZ 00000
DF2
name age
Bill 30
Steve 40
Jackie 50
最終DF
name age address phone
ABC 25 XYZ 00000
Bill 30 XYZ 00000
Steve 40 XYZ 00000
Jackie 50 XYZ 00000
uj5u.com熱心網友回復:
有一個簡單的方法來做到這一點:
import org.apache.spark.sql.functions.lit
val row = df1.select("address", "phone").collect()(0)
val finalDF = df2.withColumn("address", lit(row(0)))
.withColumn("phone", lit(row(1))).union(df1)
uj5u.com熱心網友回復:
您可以在左側使用簡單的 left .joinby namewith df2(age從中獲得df1):
val results = df2.select("name", "address", "phone")
.join(df1, Seq("name"), "left")
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/461168.html
