VectorAssembler的功能非常煩人。 我目前正在將一組列轉換爲 向量的一列,然後使用StandardScaler函數將縮放 應用於所包含的功能。然而,似乎SPARK的內存 的原因,決定它應該使用DenseVector還是SparseVector來表示每行功能。 但是,當您需要使用StandardScaler時,SparseVector(s) 的輸入無效,只允許使用DenseVectors。有人知道解決方案嗎?VectorAssembler只輸出到DenseVector?
編輯: 我決定只使用UDF函數來代替,從而關 稀疏矢量成緻密的載體。有點愚蠢,但作品。