我有一组标签文件,我必须阅读并保存在数据库中(Cassandra)。我可以加载所有列中包含数据的表。但是某些表在某些列中具有空值,而这些列未插入。
我试过以下,
sqlContext.read.format("com.databricks.spark.csv").option("header", "true").option("delimiter", "/t").option("nullValue"," ").load(path)
以及
sqlContext.read.format("com.databricks.spark.csv").option("header", "true").option("delimiter", "/t").option("nullValue"," ").option(""," ").load(path)
两个选项都没有加载数据。有什么输入吗?
答案 0 :(得分:1)
我想我认为,
var df = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").option("delimiter", "\t").option("treatEmptyValuesAsNulls", "true").option("nullValue","").load(path)
这将每个空值变为空,然后
var df1 = df.na.fill(" ",df.columns)
我必须创建另一个df来反映填充。我仍然需要研究如何基于dtypes动态填充。