如何从 PySpark 列表中删除/替换字符

How to Remove / Replace Character from PySpark List

我是 Python/PySpark 的新手,目前将它与 Databricks 一起使用。 我有以下列表

dummyJson= [
 ('{"name":"leo", "object" : ["191.168.192.96", "191.168.192.99"]}',), 
 ('{"name":"anne", "object" : ["191.168.192.103", "191.168.192.107"]}',),
]

当我尝试

jsonRDD = sc.parallelize(dummyJson) 然后 把它放在数据框中 spark.read.json(jsonRDD)

它没有正确解析 JSON。生成的数据框是一列 _corrupt_record 作为 header.

查看 dummyJson 中的元素,似乎每个 element/record.

的右括号前都有额外/不必要的逗号

如何从此列表的每个元素中删除这个逗号?

谢谢

如果能在源头固定输入格式就好了

但是对于给定的情况,您可以通过从元组中取出对象来修复它。

>>> dJson = [i[0] for i in dummyJson]
>>> jsonRDD = sc.parallelize(dJson)
>>> jsonDF = spark.read.json(jsonRDD)
>>> jsonDF.show()
+----+--------------------+
|name|              object|
+----+--------------------+
| leo|[191.168.192.96, ...|
|anne|[191.168.192.103,...|
+----+--------------------+