0
我有一個火花腳本,應該刪除數據幀構建基礎上的空值從csv文件讀取的數據。Spark Apache沒有刪除「NULL」值
這是我的csv文件怎麼看起來像:
Name,Surname,Age,Class,Categ
John,Snow,30,2nd,NULL
Alfred,Nobel,69,10th,m
Isaac,Newton,55,9th,m
所以,我需要刪除每行包括「NULL」值。爲了達到這個效果,這個我wrinting代碼:
rdd = sc.textFile(dataset)
header = rdd.first()
data = rdd.filter(lambda x: x!=header).map(lambda line: line.replace("NULL","").split(","))
columns = header.split(",")
df = spark.createDataFrame(data, columns)
cleanedData = df.na.drop()
cleanedData.coalesce(1).write.option("header", True).option("delimiter", ",").csv('cleanedData')
當我執行我的代碼,它應該返回一個CSV文件,內容如下:(去掉第一行)
Name,Surname,Age,Class,Categ
Alfred,Nobel,69,10th,m
Isaac,Newton,55,9th,m
但我得到的是(只是用一個空字符串替換NULL值,但不刪除該行):
Name,Surname,Age,Class,Categ
John,Snow,30,2nd,
Alfred,Nobel,69,10th,m
Isaac,Newton,55,9th,m
我該如何解決這個問題?