'K-means from dataframe wor2Vec on scala

I am trying to apply K-means method to the output of my wor2Vec model. The word2vec method produced a dataframe vectors and I cannot apply K-means on it.

See Below the dataframe of vectors

dataframe

After I've ran the following code to transform my dataframe to RDD

val parsedData = vectors.rdd.map(s => Vectors.dense(s.getDouble(0),s.getDouble(1))).cache()

When I try to apply K-means ont it it doesn't work

val clusters = KMeans.train(parsedData, 5, 20)

This is the error I have :

<console>:60: error: type mismatch;
 found   : org.apache.spark.rdd.RDD[org.apache.spark.ml.linalg.Vector]
 required: org.apache.spark.rdd.RDD[org.apache.spark.mllib.linalg.Vector]

How to transforme the sql dataframe I have before to one that will match with spark.mllib.linalg.Vector



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source