如何以逗号分隔存储 JSON 数据框
How to store JSON dataframe with comma sepearted
我需要将数据帧记录写入 json 文件。如果我将数据帧写入它存储的文件中,如 {"a":1} {"b":2}
,我想将数据帧写入 [{"a":1} ,{"b":2}]
。你能帮我么。提前致谢。
使用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}]
我需要将数据帧记录写入 json 文件。如果我将数据帧写入它存储的文件中,如 {"a":1} {"b":2}
,我想将数据帧写入 [{"a":1} ,{"b":2}]
。你能帮我么。提前致谢。
使用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}]