簡體   English   中英

如何從 Scala 中的數組創建 DataFrame?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM