使用df.tojson将dataframe(比如子dataframe)转换为json
json转换后,模式如下所示:
root
|-- value: string (nullable = true)
我使用以下建议将子Dataframe放入中间父架构/Dataframe:
scala> parentDF.toJSON.select(struct($"value").as("data")).printSchema
root
|-- data: struct (nullable = false)
| |-- value: string (nullable = true)
现在我仍然需要进一步构建parentdf模式,使其看起来像:
root
|-- id
|-- version
|-- data: struct (nullable = false)
| |-- value: string (nullable = true)
q1)如何使用id from值构建id列(即value.id需要表示为id)
问题2)我需要从一个不同的Dataframe(比如versiondf)获取版本,其中version是一个常量(在所有列中)。我是否从这个versiondf中提取一行来读取version列的值,然后在parentdf中将其填充为literal?
请帮助任何代码片段。
2条答案
按热度按时间5kgi1eie1#
而不是
toJSON
使用to_json
在select
语句并选择所需的列以及to_json
功能。检查以下代码。
更新
更新-1
dsekswqp2#
试试这个: