为什么DataFrame Row.getAs [Vector]失败了?

时间:2017-02-04 21:12:55

标签: apache-spark dataframe spark-dataframe

我有一个Spark DataFrame,它有两列String和org.apache.spark.ml.linalg.SparseVector类型,这很好用:

data.map(r => r(1).asInstanceOf[Vector])

但是getAs

data.map(r => r.getAs[Vector](1))

失败
  

错误:无法找到存储在数据集中的类型的编码器。原始   types(Int,String等)和Product类型(case类)   通过导入spark.implicits._支持序列化   其他类型将在未来版本中添加。

请你能解释一下原因吗?

1 个答案:

答案 0 :(得分:0)

尝试一下:

ADD mysql /var/lib/mysql/

有关data.rdd.map(r => r.getAs[Vector](1))Encoder的更多信息,您可以阅读this SO question