VectorAssembler não oferece suporte à conversão de spark scala do tipo StringType

Eu tenho um quadro de dados que contém colunas de seqüência de caracteres e planejo usá-lo como entrada para k-means usando spark e scala. Estou convertendo minhas colunas digitadas em string do dataframe usando o método abaixo:

 val toDouble = udf[Double, String]( _.toDouble) 
 val analysisData  = dataframe_mysql.withColumn("Event", toDouble(dataframe_mysql("event"))).withColumn("Execution", toDouble(dataframe_mysql("execution"))).withColumn("Info", toDouble(dataframe_mysql("info")))              
 val assembler = new VectorAssembler()
    .setInputCols(Array("execution", "event", "info"))
    .setOutputCol("features")
val output = assembler.transform(analysisData)
println(output.select("features", "execution").first())

quando imprimo o esquema analysisData, a conversão está correta. mas estou recebendo uma exceção:VectorAssembler não suporta o tipo StringType o que significa que meus valores ainda são seqüências de caracteres! como posso converter os valores e não apenas o tipo de esquema?

obrigado

questionAnswers(1)

yourAnswerToTheQuestion