如何从本地获取输入并将其存储到数据框中的本地

How to get the input from local and store it to local in a dataframe

    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 is not a member of unit。

谁能帮我解决这个问题?如何将输出加载到 csv 文件?

错误消息给了你一个强烈的指示:write is not a member of Unit 意味着没有调用 write 的方法在类型 Unit.

换句话说:equi 属于 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")