我将json文件吸收到spark中,在文件的嵌套json中遇到了一个如下所示的对象
"data": {
"key1" :"v1"
"key2" : [
{"nk1" :"nv1"},
{"nk2" :"nv2" },
{"nk3" :"nv3" }
]
}
在spark中读取后,它将变为以下格式:
"data": {
"key1" :"v1"
"key2" : [
{"nk1" :"nv1", "nk2" :null, "nk3" :null},
{"nk1" :null, "nk2" :"nv2", "nk3" :null},
{"nk1" :null, "nk2" :null, "nk3" :"nv3"}
]
}
我需要它们作为spark数据框中的列
“键1”“nk1”“nk2”“nk3”“v1”“kv1”“kv2”“kv3”
请帮我解决这个问题。我在考虑把它转换成字符串并使用正则表达式。有没有更好的解决办法?
1条答案
按热度按时间5n0oy7gb1#
可以分解数组和轴键2: