Как перебрать строки Spark DataFrame и добавить их в последовательность объектов класса case?
DF1:
val someDF = Seq(
("202003101750", "202003101700",122),
("202003101800", "202003101700",12),
("202003101750", "202003101700",42)
).toDF("number", "word","value")
Класс дела:
case class ValuePerNumber(num:String, wrd:String, defaultID:Int, size: Long=0) {}
Ожидаемый результат:
Seq(ValuePerNumber("202003101750", "202003101700",0, 122), ValuePerNumber("202003101800", "202003101700",0, 12), ValuePerNumber("202003101750", "202003101700",0, 42))
В каждом случае я могу использовать defaultID как 0. Я не уверен, как подойти и решить эту проблему и был бы очень признателен за любое решение / предложение!
Я пробовал следующее:
val x = someDF.as[ValuePerNumber].collect()
Я получаю следующую ошибку:
org.apache.spark.sql.AnalysisException: cannot resolve '`num`' given input columns: [number, word, value];