我正在使用pyspark
我具有从Spark数组创建虚拟SparkVector的功能
DBA_OBJECTS
当我尝试
def to_sparse():
return F.udf(lambda x: SparseVector(2, [2, 2], [4, 4]), VectorUDT())
它引发TypeError:只能将整数标量数组转换为标量索引
输入的模式只是一个双精度数组
embedding_rdd_array = embedding_rdd.select("embedding", to_sparse()('embedding').alias("something"))
当我收集嵌入元素并将其传递给向量时,它将起作用。但是当我使用UDF调用时失败了。