【发布时间】:2021-07-31 20:29:26
【问题描述】:
我有一个如下所示的 json 文件:
test= {'kpiData': [{'date': '2020-06-03 10:05',
'a': 'MINIMUMINTERVAL',
'b': 0.0,
'c': True},
{'date': '2020-06-03 10:10',
'a': 'MINIMUMINTERVAL',
'b': 0.0,
'c': True},
{'date': '2020-06-03 10:15',
'a': 'MINIMUMINTERVAL',
'b': 0.0,
'c': True},
{'date': '2020-06-03 10:20',
'a': 'MINIMUMINTERVAL',
'b': 0.0,}
]}
我想将它传输到数据框对象,如下所示:
rdd = sc.parallelize([test])
jsonDF = spark.read.json(rdd)
这会导致记录损坏。据我了解,原因是 True 和 False 不能成为 Python 中的条目。所以我需要在spark.read.json() 之前转换这些条目(到 TRUE、true 或“True”)。 test 是一个 dict 并且 rdd 是一个 pyspark.rdd.RDD 对象。对于 datframe 对象,转换非常直接,但我没有找到这些对象的解决方案。
【问题讨论】:
标签: json apache-spark pyspark apache-spark-sql rdd