VectorAssembler no es compatible con la conversión de chispa scala tipo StringType

Tengo un marco de datos que contiene columnas de cadena y estoy planeando usarlo como entrada para k-means usando spark y scala. Estoy convirtiendo mis columnas de tipo cadena del marco de datos utilizando el siguiente método:

 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())

cuando imprimo el esquema de análisis de datos, la conversión es correcta. pero recibo una excepción:VectorAssembler no admite el tipo StringType lo que significa que mis valores siguen siendo cadenas! ¿Cómo puedo convertir los valores y no solo el tipo de esquema?

Gracias

Respuestas a la pregunta(1)

Su respuesta a la pregunta