【问题标题】:Dataframe creation in Scala在 Scala 中创建数据框
【发布时间】:2016-05-12 21:34:00
【问题描述】:
wordsDF = sqlContext.createDataFrame([('cat',), ('elephant',), ('rat',), ('rat',), ('cat', )], ['word'])

这是一种从 python 中的元组列表创建数据框的方法。我怎样才能在 scala 中做到这一点?我是 Scala 的新手,我在弄清楚它时遇到了问题。

任何帮助将不胜感激!

【问题讨论】:

标签: scala apache-spark dataframe


【解决方案1】:

一种简单的方法,

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

所以df.show

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

请参阅Programmatically Specifying the Schema 中的工作示例,以使用createDataFrame 构造DataFrame

【讨论】:

    【解决方案2】:

    要创建数据框,您需要创建 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._
    

    现在你可以创建数据框了

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

    了解更多关于创建数据框here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-30
      • 1970-01-01
      相关资源
      最近更新 更多