row.getList java.lang.ClassCastException: java.math.BigDecimal 无法转换为 scala.collection.Seq

row.getList java.lang.ClassCastException: java.math.BigDecimal cannot be cast to scala.collection.Seq

我正在尝试从具有以下架构元素的行中检索列表。

[info]  |-- ARRAY_FIELD: array (nullable = false)
[info]  |    |-- element: string (containsNull = false)

使用

打印时
row.getAs[WrappedArray[String]]("ARRAY_FIELD")

我得到以下结果

WrappedArray(Some String value)

但是当我尝试将该索引处的数据打印为列表时 使用....

row.getList(0)

我得到以下异常

java.lang.ClassCastException: java.math.BigDecimal cannot be cast to scala.collection.Seq

有没有人知道为什么会发生这种情况以及如何解决?

我实际上是从架构中的错误索引中提取数据。我假设 getList 的索引基于使用 df.printSchema 时显示的元素的索引。但是我错了。落后 6 个位置。