[英]How to create DataFrame from the an array in Scala?
我有一個用例,我需要從數組創建一個 DataFrame。
我創建了一個讀取 CSV 的 DataFrame,然后我使用地圖來進一步處理/轉換它。
var mapTransform = df1.collect.map(
line => {
// line.split(",") logic for fields separation
//transformation logic here for various fields
(field1+","+field2+","+field3);
}
)
由此,我得到一個array(Array[String])
,它是轉換結果。
我想用單獨的列進一步轉換它的數據幀,以便以后它可以用於寫入數據庫或文件,但是,我面臨一個問題。 有可能做到嗎? 任何解決方案?
這可以完成您的工作: spark.sparkContext.parallelize(mapTransform.toSeq)
但請注意,您必須避免產生非 rdd 的方法,因為它們將數組的所有內容加載到一個節點,這在一般情況下是無效的。
此外,還有一個約定是盡可能將var
s 轉換為val
s。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.