使用PySpark 將向量列拆分為列
您有一個包含兩列的PySpark DataFrame:單字和向量,其中向量是VectorUDT 欄位。您的目標是將向量列拆分為多列,每列代表向量的一維。
解決方案:
Spark >= 3.0.0
在Spark 3.0.0以上版本使用vector_to_array函數要實現此目的:
這將建立名為word 和xs[0]、xs[1]、xs[2] 等的新列,表示原始向量的值。
火花
對於較舊的Spark 版本,您可以按照以下方法操作:
轉換為RDD 並提取
建立一個UDF:
兩種方法都會產生一個DataFrame,其中原始向量的每個維度都有單獨的列,從而更容易處理資料。
以上是如何在 PySpark 中將向量列拆分為列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!