我正在尝试解析json字符串列表的一列,但是即使在尝试使用structType,structField等多个模式之后,我也根本无法获取该模式。
[{"event":"empCreation","count":"148"},{"event":"jobAssignment","count":"3"},{"event":"locationAssignment","count":"77"}]
[{"event":"empCreation","count":"334"},{"event":"jobAssignment","count":33"},{"event":"locationAssignment","count":"73"}]
[{"event":"empCreation","count":"18"},{"event":"jobAssignment","count":"32"},{"event":"locationAssignment","count":"72"}]
基于此SO帖子,我能够派生json模式,但是即使在应用from_json函数之后,它仍然无法工作
Pyspark: Parse a column of json strings
可以帮忙吗?
答案 0 :(得分:1)
您可以使用以下schame定义来解析给定的json模式,并将json作为提供模式信息的DataFrame读取。
$
json文件的内容:
IF
答案 1 :(得分:0)
非常感谢@Lakshmanan,但我只需要对架构进行一点改动:
eventCountSchema = ArrayType (StructType([StructField(“ event”,StringType(),True),StructField(“ count”,StringType(),True)]),True)
,然后将此架构应用于数据框复杂数据类型列