我正在尝试计算数据框中的行与向量(Vectors.sqdist(v1,centerid)
<console>:54: error: type mismatch;
found : scala.collection.immutable.Vector[org.apache.spark.sql.Row]
)之间的距离。
我计划用K-Means算法进行异常检测,所以我得到了一个矢量的中心id然后我可以计算数据帧中行的距离,但我得到了以下错误:
Vector[org.apache.spark.sql.Row]
如何将org.apache.spark.ml.linalg.Vector
转换为Starting new HTTPS connection (1): test-dev-cognito-settings-us-west-2.s3.us-west-2.amazonaws.com
An error occurred (AccessDenied) when calling the GetObject operation: Access Denied: ClientError
?
答案 0 :(得分:0)
您可以使用VectorAssembler将您的行转换为功能矢量。试试这个:
val df: DataFrame = ???
val vector = new VectorAssembler().setInputCols(Array("yourInputColumns")).setOutputCol("features")
vector.transform(df)
作为输出,您将获得一个带有该类型的列的Dataframe 的 org.apache.spark.ml.linalg.Vector 强>