我正在使用Apache Spark 2.0數據框/數據集API 我想從值列表向我的數據框添加一個新列。我的列表與給定的數據幀具有相同數量的值。Apache Spark如何將新列從列表/數組添加到Spark數據框
val list = List(4,5,10,7,2)
val df = List("a","b","c","d","e").toDF("row1")
我想這樣做:
val appendedDF = df.withColumn("row2",somefunc(list))
df.show()
// +----+------+
// |row1 |row2 |
// +----+------+
// |a |4 |
// |b |5 |
// |c |10 |
// |d |7 |
// |e |2 |
// +----+------+
對於任何想法,我將不勝感激,我在現實中數據幀中包含多個列。作爲DataFrame
表明,這是一個小的數據幀的事實,(它存在於駕駛員記憶)輸入list
具有相同的大小:
如果列表和DF大小不同,會發生什麼?僅包含較大集合中的前N個項目(其中N =較短集合的大小)? –
在我的情況下,我知道它將永遠是相同的長度 –
您也可以將列表轉換爲數據幀。然後將row_number添加到它們並按row_number進行連接。 –