我是Spark / Scala / Dataframes的新手。我正在使用Scala 2.10.5,Spark 1.6.0。我试图加载一个csv文件,然后从中创建一个数据帧。使用scala shell我按以下顺序执行以下操作。一旦我执行第6行,我就会收到错误消息:
error: value show is not a member of org.apache.spark.sql.DataFrameReader
有人可以告诉我可能遗失的内容吗?我知道如果我使用REPL(shell),我不需要导入sparkcontext,因此sc会自动创建,但任何想法我做错了什么?
1。import org.apache.spark.sql.SQLContext
import sqlContext.implicits._
val sqlContext = new SQLContext(sc)
val csvfile = "path_to_filename in hdfs...."
val df = sqlContext.read.format(csvfile).option("header", "true").option("inferSchema", "true")
df.show()
答案 0 :(得分:2)
试试这个:
val df = sqlContext.read.option("header", "true").option("inferSchema", "true").csv(csvfile)
sqlContext.read
为您提供了DataFrameReader
,option
和format
都设置了一些选项并返回DataFrameReader
。在使用DataFrame
之类的操作之前,您需要调用其中一种方法,为您提供csv
(例如show
)。
有关详细信息,请参阅https://spark.apache.org/docs/latest/api/scala/index.html#org.apache.spark.sql.DataFrameReader。