假設我有pySpark以下dataframes:外連接具有不相同聯接列星火數據框中,然後合併聯接列
df1 = sqlContext.createDataFrame([Row(name='john', age=50), Row(name='james', age=25)])
df2 = sqlContext.createDataFrame([Row(name='john', weight=150), Row(name='mike', weight=115)])
df3 = sqlContext.createDataFrame([Row(name='john', age=50, weight=150), Row(name='james', age=25, weight=None), Row(name='mike', age=None, weight=115)])
現在假設我想從加入/合併df1
和df2
創建df3
。
我試着做
df1.join(df2, df1.name == df2.name, 'outer')
這並不完全準確地工作,因爲它產生兩個名稱列。然後,我需要以某種方式組合這兩個名稱列,以便從一個名稱列中缺少的名稱由來自其他名稱列的缺少名稱填充。
我該怎麼做?或者有更好的方法來創建從df1
和df2
df3
?