【发布时间】:2015-10-11 04:32:51
【问题描述】:
我正在使用 DataFrame 读取 .parquet 文件,但不是将它们变成 rdd 来进行我想要对它们进行的正常处理。
所以我有我的文件:
val dataSplit = sqlContext.parquetFile("input.parquet")
val convRDD = dataSplit.rdd
val columnIndex = convRDD.flatMap(r => r.zipWithIndex)
即使我从数据帧转换为 RDD,也会出现以下错误:
:26: 错误:值 zipWithIndex 不是 org.apache.spark.sql.Row
任何人都知道如何做我想做的事情,本质上是尝试获取值和列索引。
我在想这样的事情:
val dataSplit = sqlContext.parquetFile(inputVal.toString)
val schema = dataSplit.schema
val columnIndex = dataSplit.flatMap(r => 0 until schema.length
但由于不确定如何对 zipWithIndex 执行相同的操作,因此卡在了最后一部分。
【问题讨论】:
标签: scala apache-spark apache-spark-sql