Вы пытаетесь отобразить целочисленные значения непосредственно в DataFrame, что является возможной ошибкой, поэтому она выдает ошибку приведения, ошибку приведения типа. Сначала попробуйте собрать выходные данные, а затем попытаться сопоставить их с кадром данных.
собирать значения в первую очередь в переменной, вызывая распараллеленное задание .collect ()
посмотрите примерно так - это поможет сопоставить значения со столбцами df, которые вы пытаетесь создать.
val someDF = Seq (
(8, "летучая мышь"),
(64, «мышь»),
(-27, "конь")
) .toDF ("число", "слово")