Заменить значения NULL в таблице данных СПАРК



Я увидел здесь решение, но когда я попробовал, оно не работает для меня.



Сначала я импортирую автомобили.csv-файл:



val df = sqlContext.read
.format("com.databricks.spark.csv")
.option("header", "true")
.load("/usr/local/spark/cars.csv")


Который выглядит следующим образом:



+----+-----+-----+--------------------+-----+
|year| make|model| comment|blank|
+----+-----+-----+--------------------+-----+
|2012|Tesla| S| No comment| |
|1997| Ford| E350|Go get one now th...| |
|2015|Chevy| Volt| null| null|


Затем я делаю следующее :



df.na.fill("e",Seq("blank"))


Но значения null не изменились.



Кто-нибудь может мне помочь ?
591   2  

2 ответов:

Это в принципе очень просто. Вам нужно будет создать новый DataFrame. Я использую DataFrame df, который вы определили ранее.

val newDf = df.na.fill("e",Seq("blank"))

DataFrames-этонеизменяемые структуры . Каждый раз, когда вы выполняете преобразование, которое вам нужно сохранить, вам нужно будет изменить преобразованное DataFrame на новое значение.

Вы можете достичь того же в java таким образом

Dataset<Row> filteredData = dataset.na().fill(0);

Comments

    Ничего не найдено.