我正在对一个数据帧进行collect_list,该数据帧会为我提供所需的column(TASourceId)
,如下所示:
[{"TASourceId": "Source1", "flag": "true"}, {"TASourceId": "Source2", "flag": "true"}]
查询:
SELECT col1, col2,col3, collect_list(struct(TASourceId, flag)) as TASourceId
FROM table
GROUP BY 1,2,3
是否可以将字典对象的字典作为该列的输出,如下所示?
{"col1":{"TASourceId": "Source1", "flag": "true"}, "col2":{"TASourceId": "Source2", "flag": "true"}}
我正在尝试使用spark UDF
来获取此信息,但是出现以下错误:
预期为类dict错误的零参数。
答案 0 :(得分:0)
我已将一个样本作为您的数组,并将其转换为字典。
a=[{"TASourceId": "Source1", "flag": "true"}, {"TASourceId": "Source2", "flag": "true"}]
s={}
for i in range(0,len(a)):
s["col"+str(i)]=a[i]
print(s)