如何使用默认值从PySpark数据帧访问JSON值?

2024-10-02 10:29:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个spark数据帧,其中一列上有一个Json。我的任务是把这个数据帧转换成一个列型的数据帧。问题是JSON是动态的,它总是改变结构。我想做的是尝试从中获取值,如果没有,则返回默认值。在数据帧中有这个选项吗?这就是我从JSON中提取值的方式,问题是如果某个级别更改了名称或结构,它不会失败。你知道吗

columnar_df = df.select(col('json')['level1'].alias('json_level1'),
col('json')['level1']['level2a'].alias('json_level1_level2a'),
col('json')['level1']['level2b'].alias('json_levelb'),
)

Tags: 数据jsondf选项方式动态aliascol

热门问题