Scala Spark将0转换为null

Scala Spark将0转换为null,scala,apache-spark,cassandra,Scala,Apache Spark,Cassandra,我在Cassandra中有一个表,这个表中的一列有一个Double类型,值为0 当我尝试使用spark读取此数据时: val dataFromCassandra = sqlContext.read .cassandraFormat("table_name", SomeKeyspace) .load() 它返回null值,而不是0 请帮忙 不熟悉Cassandra数据源,但您可以使用coalesce将某列的所有nulls替换为某个常量值(例如0): df.show() // +---+-

我在Cassandra中有一个表,这个表中的一列有一个Double类型,值为0

当我尝试使用spark读取此数据时:

val dataFromCassandra = sqlContext.read
  .cassandraFormat("table_name", SomeKeyspace)
  .load()
它返回
null
值,而不是0


请帮忙

不熟悉Cassandra数据源,但您可以使用
coalesce
将某列的所有
null
s替换为某个常量值(例如
0
):

df.show()
// +---+-----+
// | id|value|
// +---+-----+
// |  1| null|
// |  2| null|
// +---+-----+

df.withColumn("value", coalesce($"value", lit(0.0))).show() 
// +---+-----+
// | id|value|
// +---+-----+
// |  1|  0.0|
// |  2|  0.0|
// +---+-----+

使用spark 1.6,您能否在数据框中显示该列的类型(来自Cassandra.printSchema()的
dataFromCassandra.printSchema()的结果)?类型为double。这很有帮助,tnx您可以