在scala中,对Dataframe中的一列进行排序、将其转换为list并将第一个元素赋给variable的最有效方法是什么。我试了以下方法
import org.apache.spark.SparkConf
import org.apache.spark.sql.SparkSession
import org.apache.spark.sql.functions.{col, first, regexp_replace}
import org.apache.spark.sql.functions._
println(CONFIG.getString("spark.appName"))
val conf = new SparkConf()
.setAppName(CONFIG.getString("spark.appName"))
.setMaster(CONFIG.getString("spark.master"))
val spark: SparkSession = SparkSession.builder().config(conf).getOrCreate()
val df = spark.read.format("com.databricks.spark.csv").option("delimiter", ",").load("file.csv")
val dfb=df.sort(desc("_c0"))
val list=df.select(df("_c0")).distinct
但我仍然无法将第一个元素保存为变量
1条答案
按热度按时间q43xntqr1#
使用
select
,orderBy
,map
&head
假定列_c0
属于类型string
,如果是不同的类型,则必须在中修改列数据类型_.getAs[<your column datatype>]
检查以下代码。或