【发布时间】:2018-03-07 20:39:34
【问题描述】:
我想将 Dataframe 的空字段写为空,但它始终写为 NULL。我想将 NULLS 写为 ? 并将空写为空/空白。从 csv 读取时相同。
val df = sqlContext.createDataFrame(Seq(
(0, "a"),
(1, "b"),
(2, "c"),
(3, ""),
(4, null)
))
scala> df.show
| 0| a|
| 1| b|
| 2| c|
| 3| |
| 4|null|
+---+----+
df.write.mode(SaveMode.Overwrite).format("com.databricks.spark.csv").option("nullValue","?").save("/xxxxx/test_out")
written output :
0,a
1,b
2,c
3,?
4,?
.option("treatEmptyValuesAsNulls" , "false")
此选项不起作用。
我需要空写成空
0,a
1,b
2,c
3,
4,?
【问题讨论】:
标签: csv apache-spark dataframe