我正在编写代码来从列中选择不等于其他两个大值的最大值。最大值始终是第三大值。两个最大的值是占位符,(int)以年月格式999912和999901。
我一直尝试使用Max和Filter,没有运气。
val maxSurvey = s.max("SurveyMonth").filter(survey("SurveyMonth") =!= "999912" && survey("SurveyMonth") =!= "999901")
我预计目前的结果是201902。
您需要选择最大值,但过滤器中的代码也是错误的,如果您需要Max,为什么要将SurveyMonth与String进行比较?
更改后,您的代码将如下所示:
val maxSurvey = s.filter('SurveyMonth =!= 999912 && 'SurveyMonth =!= 999901).select(max('SurveyMonth))