【发布时间】:2020-12-10 00:22:36
【问题描述】:
+---------------------------+
|address |
+---------------------------+
|[San Jone, 19422, CA, 126]|
|[Queens, 11372, NY, 5543] |
+---------------------------+
如果里面的值在数组中,如何将一列分成4?
预期输出:
+-----------------------------+
|city | Zip |state|street |
+-----------------------------+
|San Jose| 19422| CA |126 |
|Queens | 11372| NY |5543 |
+-----------------------------+
编辑:
[
{
"firstName": "Rack",
"lastName": "Jackon",
"gender": "man",
"age": 24,
"address": {
"streetAddress": "126",
"city": "San Jone",
"state": "CA",
"postalCode": "394221"
}
},
{
"firstName": "Apache",
"lastName": "Spark",
"gender": "Woman",
"age": 24,
"address": {
"streetAddress": "5543",
"city": "Queens",
"state": "NY",
"postalCode": "11372"
}
}
]
这是我拥有的 .json 文件,创建数据框后,我需要将地址分成 4 列。
【问题讨论】:
-
我是usnig databricks,我认为是spark 3.0
-
您提到地址是一个数组,但看起来像结构类型。您可以使用
address.*,它将根据您的要求创建新列。
标签: arrays apache-spark multiple-columns