将数据帧保存到 pyspark 本地驱动器上的 JSON 文件

Jar*_*red 5 python json apache-spark pyspark

我有一个数据框,我试图使用 pyspark 1.4 将其另存为 JSON 文件,但它似乎不起作用。当我给它提供目录的路径时,它会返回一个错误,指出它已经存在。我基于文档的假设是它会在您提供的路径中保存一个 json 文件。

df.write.json("C:\Users\username")
Run Code Online (Sandbox Code Playgroud)

指定具有名称的目录不会产生任何文件并给出“java.io.IOException: Mkdirs failed to create file:/C:Users/username/test/_temporary/....etc”的错误。但是它会创建一个名为 test 的目录,其中包含几个带有空白 crc 文件的子目录。

df.write.json("C:\Users\username\test")
Run Code Online (Sandbox Code Playgroud)

并添加 JSON 的文件扩展名,产生相同的错误

df.write.json("C:\Users\username\test.JSON")
Run Code Online (Sandbox Code Playgroud)

Wes*_*man 4

你能不能只用

df.toJSON()
Run Code Online (Sandbox Code Playgroud)

如图所示?如果没有,那么先转成pandas DataFrame,然后写入json。

pandas_df = df.toPandas()
pandas_df.to_json("C:\Users\username\test.JSON")
Run Code Online (Sandbox Code Playgroud)