![](/img/trans.png)
[英]How to remove quote characters around array when loading a csv in Python?
[英]How to not print out Quote characters when creating a CSV file in Python
我有一个使用Python在Azure Databrick中创建的CSV文件。 这是在获取数据帧并从中生成CSV文件。 问题是,当数据帧中有一个空值时,输出为2个双引号,即“”,
示例输出
L1Code L1 Desc1 L1 Desc2 L1 Desc3 L2Code
Beverage Beverage "" "" Drink Blends
这是我用来生成文件的代码,其中df是已经创建的Pandas数据框。
from pyspark.sql import SQLContext
def createCsvFile(data, rootPath, filePath):
data.coalesce(1).write.mode("overwrite").format("com.databricks.spark.csv").option("header", "true").option("delimiter", "\t").option("quoteMode", "NONE").csv(rootPath + filePath + ".tmp")
fileList = dbutils.fs.ls(rootPath + filePath + ".tmp/")
for file in fileList:
if file.name.endswith("csv"):
filename = file.path
dbutils.fs.cp(filename, rootPath + filePath + ".txt")
dbutils.fs.rm(rootPath + filePath + ".tmp", recurse=True)
sqlCtx = SQLContext(sc)
data = sqlCtx.createDataFrame(df)
createCsvFile(data, '/mnt/adlsdata/Raw/Astute/', 'products')
我最终需要使用emptyValue选项来使ti工作
data.coalesce(1).write.mode("overwrite").format("com.databricks.spark.csv").option("header", "true").option("delimiter", "\t").option("quoteMode", "NONE").option("quote", u'\u0000').option("nullValue", "").option("emptyValue", "").csv(rootPath + filePath + ".tmp")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.