簡體   English   中英

如何從列表創建Spark數據框

[英]How to create spark dataframe from list

我有一個scala列表List[Any] = List("a", "b",...) ,我需要獲取一個Spark數據幀,該數據幀由僅包含List中所有列的一行組成。 我正在嘗試使用sc.parallelize(myList)從中創建一個RDD,它org.apache.spark.rdd.RDD[Any] = ParallelCollectionRDD[5834] at parallelize at <console>:81返回org.apache.spark.rdd.RDD[Any] = ParallelCollectionRDD[5834] at parallelize at <console>:81

但是我不能選擇該行的特定元素: sc.parallelize(myList).map(line => line(0))返回error: Any does not take parameters

我不能使用toDF()來獲取我的DataFrame

value toDF is not a member of org.apache.spark.rdd.RDD[Any]

我想它與Any類型有關,但是我需要接受任何類型,因為我不知道列表中會得到什么

由於沒有為Lis​​t [Any]隱式提供的.toDF函數,因此該方法將行不通。

即使您創建了一個DataFrame,它只有一個名為value的列,並且具有與原始List中的元素一樣多的行。

例如

scala> List(1,2,3).toDF
res10: org.apache.spark.sql.DataFrame = [value: int]

您正在尋找類似的東西:

scala> List(List(1,2,3)).toDF
res11: org.apache.spark.sql.DataFrame = [value: array<int>]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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