簡體   English   中英

scala spark中的行到向量

[英]row to vector in scala spark

我有一行通過以下方式獲得:

val row_name = df.collect()(i)

如何將此行轉換為類型向量,以便可以將其傳遞給 fromML() 如下?

val vector_name=org.apache.spark.mllib.linalg.Vectors.fromML(row_name)

提前致謝!

您可以使用vectorAssembler

import org.apache.spark.ml.linalg.Vector
import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.ml.feature.VectorAssembler

val df = Seq((1,2),(3,4)).toDF("col1","col2")

val va = new VectorAssembler().setInputCols(Array("col1","col2")).setOutputCol("vector")

val row0 = va.transform(df).select("vector").collect()(0).getAs[Vector](0)

val vector0 = Vectors.fromML(row0)
// vector0: org.apache.spark.mllib.linalg.Vector = [1.0,2.0]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM