0
我試圖連接兩個dataframes具有相同的列名,並計算了一些新的價值。之後,我需要刪除第二個表的所有列。列數很大。我怎樣才能以更簡單的方式做到這一點?我試圖.drop(「table2。*」),但這不工作。星火SQL數據框中刪除所有列從別名表連接後
我試圖連接兩個dataframes具有相同的列名,並計算了一些新的價值。之後,我需要刪除第二個表的所有列。列數很大。我怎樣才能以更簡單的方式做到這一點?我試圖.drop(「table2。*」),但這不工作。星火SQL數據框中刪除所有列從別名表連接後
您可以使用select
用別名必要的列:
df1.alias("df1")
.join(df2.alias("df2"), Seq("someJoinColumn"))
.select($"df1.*", $"someComputedColumn", ...)
參考與父DataFrame
:
df1.join(df2, Seq("someJoinColumn")).select(df1("*"), $"someComputedColumn", ...)
而不是丟棄的,你可以選擇所有要保持進一步的操作類似下面
val newDataFrame = joinedDataFrame.select($"col1", $"col4", $"col6")
它不是一種情況,如果我第二張桌子上有50列+50列。我可以選擇「表1。*」 +新列的名稱 – Mike
希望這有助於http://stackoverflow.com/a/35341524/1025328 –