我有一个数据帧中的一行数据,我想将其转换为一个Map[String, Any],将列名映射到该列的值。
有没有简单的方法可以做到这一点?
我已经针对字符串值做过此操作,例如
def rowToMap(row:Row): Map[String, String] = {
row.schema.fieldNames.map(field => field -> row.getAs[String](field)).toMap
}
val myRowMap = rowToMap(myRow)
如果行中包含其他值,而不是像字符串那样特定的值,则代码会变得混乱,因为该行没有.get(field)
方法。
有什么想法吗?