gpt4 book ai didi

python - Spark中值为空时如何删除双引号?

转载 作者:行者123 更新时间:2023-11-28 20:56:26 29 4
gpt4 key购买 nike

当使用 Spark 的 df.write.save() 方法在 S3 中注册我的 CSV 时,我想在值为空时删除双引号 ""

星火版本:2.4.0

Python 版本:3.6.5

这是我在 Python 中加载 csv 文件的代码:

df = spark.read.load(
path('in'),
format = 'csv',
delimiter = '|',
encoding = 'utf-8',
header = 'true'
)

加载的CSV文件:

|id|first_name|last_name|zip_code|
|1 | |Elsner |57315 |
|2 |Noelle | | |
|3 |James |Moser |48256 |

这是我用 Python 编写 csv 文件的代码:

df.write.save(
path('out'),
format = 'csv',
delimiter = '|',
header = 'true'
)

写入的CSV文件:

|id|first_name|last_name|zip_code|
|1 |"" |Elsner |57315 |
|2 |Noelle |"" |"" |
|3 |James |Moser |48256 |

如何去掉注册时的双引号?

非常感谢您。

最佳答案

根据 Spark documentationnullValueemptyValue 的默认值都是 None,并且会产生一个空字符串。要将其设置为实际的,如您所愿,您可以将其设置为 Unicode NULL:

df.write.save(
path('out'),
format = 'csv',
delimiter = '|',
header = True,
nullValue = '\u0000',
emptyValue = '\u0000'
)

关于python - Spark中值为空时如何删除双引号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54750780/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com