def main(args: Array[String]) {
val conf = new SparkConf().setMaster("local").setAppName("test")
val sc = new SparkContext(conf)
//require spark sql environment
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
import sqlContext.implicits._
val df1 = sc.makeRDD(1 to 5).map(i => (i, i * 2)).toDF("single", "double")
sc.stop()
}
我写过“import sqlContext.implicits._”; 但它仍然无效。它恰好在火花壳中。 为什么在这种情况下不对? 我已经看到很多其他方法将rdd转换为数据框, 但我的大部分代码都写成了DF()。 如何使toDF工作? 错误:
Error:(25, 55) value toDF is not a member of org.apache.spark.rdd.RDD[(Int, Int)]
val df1 = sc.makeRDD(1 to 5).map(i => (i, i * 2)).toDF("single", "double")
^
答案 0 :(得分:0)
toDF(),
您必须使用Spark的旧版本(小于1.3),这就是您收到此错误的原因。
要解决此问题,请使用Spark 1.3或更高版本。