Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 为什么DataFrame Row.getAs[Vector]失败?_Apache Spark_Dataframe_Spark Dataframe - Fatal编程技术网

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

Apache spark 为什么DataFrame Row.getAs[Vector]失败?,apache-spark,dataframe,spark-dataframe,Apache Spark,Dataframe,Spark Dataframe,我有一个Spark DataFrame,它有两列类型,分别是String和org.apache.Spark.ml.linalg.SparseVector,这很好用: data.map(r => r(1).asInstanceOf[Vector]) 但是赫塔斯 data.map(r => r.getAs[Vector](1)) 失败于 错误:找不到数据集中存储的类型的编码器。原始的 类型(Int、String等)和产品类型(case类)是 通过导入spark.implicits支持

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

data.map(r => r(1).asInstanceOf[Vector])
但是赫塔斯

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

错误:找不到数据集中存储的类型的编码器。原始的 类型(Int、String等)和产品类型(case类)是 通过导入spark.implicits支持。\u支持序列化 其他类型将在将来的版本中添加

请解释一下原因好吗?

试试这个:

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

有关
编码器
数据集
的更多信息,请阅读