Как сохранить JSON фрейм с разделителями-запятыми - PullRequest
0 голосов
/ 25 апреля 2020

Мне нужно записать запись данных в файл json. Если я записываю фрейм данных в файл, который он хранит как {"a":1} {"b":2}, я хочу записать фрейм данных как [{"a":1} ,{"b":2}]. Не могли бы вы мне помочь. Заранее спасибо.

1 Ответ

1 голос
/ 25 апреля 2020

Используйте функцию to_json для создания array of json objects, затем используйте .saveAsTextFile для сохранения объекта json.

Example:

#sample dataframe
df=spark.createDataFrame([("a",1),("b",2)],["id","name"])

from pyspark.sql.functions import *

df.groupBy(lit("1")).\
agg(collect_list(struct(*[df.columns])).alias("cl")).\
select(to_json("cl").alias("jsn")).\
rdd.\
map(lambda x:x["jsn"]).\
saveAsTextFile("<path>")

cat <path>
#[{"id":"a","name":1},{"id":"b","name":2}]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...