首頁  >  文章  >  後端開發  >  如何在 PySpark 中將向量列拆分為列?

如何在 PySpark 中將向量列拆分為列?

Susan Sarandon
Susan Sarandon原創
2024-11-01 01:06:01987瀏覽

How to Split a Vector Column into Columns in PySpark?

使用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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn