Когда я пытаюсь использовать UDF, который возвращает объект Vector, Spark выдает следующее исключение:
Cause: java.lang.UnsupportedOperationException: Not supported DataType: org.apache.spark.mllib.linalg.VectorUDT@f71b0bce
Как я могу использовать Vector в своих пользовательских функциях? Версия Spark — 1.5.1.
UPD
val dataFrame: DataFrame = sqlContext.createDataFrame(Seq(
(0, 1, 2),
(0, 3, 4),
(0, 5, 6)
)).toDF("key", "a", "b")
val someUdf = udf {
(a: Double, b: Double) => Vectors.dense(a, b)
}
dataFrame.groupBy(col("key"))
.agg(someUdf(avg("a"), avg("b")))