PySpark разбирает массив объектов (формат JSON) на один столбец df - PullRequest
0 голосов
/ 06 июля 2018

У меня есть массив вложенных объектов JSON, подобный этому:

[
  {
    "a": 1,
    "n": {}
  }
]

Я хотел бы прочитать этот JSON-файл (многострочный) в искровой DataFrame с одним столбцом. Где столбец имеет StringType и содержит объект JSON:

+----------+
|   json   |
+----------+
| {"a": 1, |
| "n": {}} |
+----------+

Я пытался сделать следующее:

schema = StructType([StructField("json", StringType(), True)])
spark.read.json('test.json', multiLine=True).show()

Но это не сработало. Есть ли варианты сделать это в PySpark?

1 Ответ

0 голосов
/ 06 июля 2018

Сам нашел решение:

json_schema = StructType([
  StructField("json", StringType(), True)
])
df.toJSON().map(lambda x: [x]).toDF(schema=json_schema).show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...