2016-05-12 74 views
1
wordsDF = sqlContext.createDataFrame([('cat',), ('elephant',), ('rat',), ('rat',), ('cat',)], ['word']) 

這是一種從python中的元組列表創建數據框的方法。我怎樣才能在scala中做到這一點?我是新來的斯卡拉,我正在解決它的問題。在斯卡拉創建數據幀

任何幫助將不勝感激!

+0

可能的複製[轉換的RDD到數據幀中使用Scala的星火(HTTP://計算器。 COM /問題/ 33023330 /轉換-AN-RDD至A-數據幀中的火花 - 使用 - 斯卡拉) –

回答

4

一個簡單的方法,

val df = sc.parallelize(List((1,"a"), (2,"b"))).toDF("key","value") 

df.show

+---+-----+ 
|key|value| 
+---+-----+ 
| 1| a| 
| 2| b| 
+---+-----+ 

參考樣例在Programmatically Specifying the SchemacreateDataFrame構建DataFrame

0

要創建數據框,您需要創建SQLContext。

val sc: SparkContext // An existing SparkContext. 
val sqlContext = new org.apache.spark.sql.SQLContext(sc) 

// this is used to implicitly convert an RDD to a DataFrame , after importing it you can use .toDF method 
import sqlContext.implicits._ 

現在你可以創建dataframes

val df1 = sc.makeRDD(1 to 5).map(i => (i, i * 2)).toDF("single", "double") 

瞭解更多關於創建dataframes的here