VectorAssembler的功能有些令人讨厌.我目前正在将一组列转换为单列向量,然后使用StandardScaler函数将缩放应用于包含的要素.但是,出于内存原因,似乎SPARK决定是否应该使用DenseVector或SparseVector来表示每行功能.但是,当您需要使用StandardScaler时,SparseVector的输入无效,只允许DenseVectors.有人知道解决方案吗?
编辑: 我决定只使用UDF函数,将稀疏矢量转换为密集矢量.有点傻但有效.
apache-spark pyspark
apache-spark ×1
pyspark ×1