基于Spark中的另一个数据帧筛选数据帧



我有一个列为的数据帧df

date: timestamp
status : String
name : String

我正在查找所有名称的最后状态

  val users = df.select("name").distinct
  val final_status = users.map( t =>
  {
     val _name =  t.getString(0)
     val record = df.where(col("name") === _name)
     val lastRecord = userRecord.sort(desc("date")).first
     lastRecord
   })

这适用于数组,但对于spark数据帧,它正在抛出java.lang.NullPointerException

更新1:使用removeDuplicates

df.sort(desc("date")).removeDuplicates("name")

这是一个好的解决方案吗?

df.sort(desc("date")).removeDuplicates("name")

不能保证工作。回答这个问题的解决方案应该对你有效

spark:如何在数据帧上进行dropDuplicates,同时保持最高时间戳行

相关内容

  • 没有找到相关文章

最新更新