将 pyspark 数据框写入 csv,不带外引号

write pyspark dataframe to csv with out outer quotes

我有一个只有一列的数据框,如下所示。我正在使用 pyspark 2.3 版写入 csv。

18391860-bb33-11e6-a12d-0050569d8a5c,48,24,44,31,47,162,227,0,37,30,28
18391310-bc74-11e5-9049-005056b996a7,37,0,48,25,72,28,24,44,31,52,27,30,4

默认情况下,代码的输出是

df.select('RESULT').write.csv(path)
"18391860-bb33-11e6-a12d-0050569d8a5c,48,24,44,31,47,162,227,0,37,30,28"
"18391310-bc74-11e5-9049-005056b996a7,37,0,48,25,72,28,24,44,31,52,27,30,4"

如何删除外引号?我试过 option('quoteAll','false') 和 option('quote',None) 没有用。

您可以尝试使用 | 分隔符书写。默认值为 ,,这与包含逗号的内容冲突。

df.select('RESULT').write.csv(path, sep="|")

你也可以使用spark.write.text:

df.select('RESULT').write.text(path)