import org.apache.spark.sql.SparkSession
import org.apache.spark.sql.functions.{min, max, avg}
val spark = SparkSession.builder().getOrCreate()
val data = spark.read.option("header","true").format("csv").load("cpid_data.csv")
val equi = data.withColumn("value",col("value").cast("double")).groupBy("id").agg(avg("value"), max("value"), min("value")).show()
在上面的代碼中,當我嘗試將輸出寫入 csv 檔案時,
equi.write.option("header",true).csv("cpido.csv")
它拋出錯誤,例如 write 不是單元的成員。
有人可以幫我嗎?如何將輸出加載到 csv 檔案?
uj5u.com熱心網友回復:
錯誤訊息給了你一個強有力的指示:writeis not a member ofUnit意味著沒有write在 type 上呼叫方法Unit。
換種說法:equiis of type Unit,這可能不是您想要的。
只需洗掉對的呼叫.show(),它就會正常作業:
val equi = data
.withColumn("value",col("value").cast("double"))
.groupBy("id")
.agg(avg("value"), max("value"), min("value"))
equi.write.option("header",true).csv("cpido.csv")
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/372771.html
