row.getList java.lang.ClassCastException:java.math.BigDecimal不能转换为scala.collection.Seq

问题描述:

我试图用下面的schema元素从一行中检索一个列表。row.getList java.lang.ClassCastException:java.math.BigDecimal不能转换为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 

有没有人有任何想法,为什么发生这种情况,以及如何解决?

+0

您可以添加打印模式 –

+0

第一个代码块具有printSchema –

+0

您的架构的结果不包含类型的任何字段'BigDecimal'请再次检查 –

我实际上是从模式中的错误索引拉。我认为getList的索引是基于使用df.printSchema时显示的元素的索引。但是我错了。关闭6个位置。