越來越java.util.NoSuchElementException斯卡拉 - 讓java.util.NoSuchElementException
val data3 = data2.filter(x => type1_dm_med.contains(x._2._1.last.medicine))
當我嘗試print data3.count
我得到下面的錯誤 - 不知道如何解決它,請幫助
[Stage 50:=====> (20 + 1)/200]16/02/26 01:37:11 ERROR Executor: Exception in task 22.0 in stage 50.0 (TID 1636)
java.util.NoSuchElementException
at scala.collection.LinearSeqOptimized$class.last(LinearSeqOptimized.scala:135)
at scala.collection.immutable.List.last(List.scala:84)
更多上下文:
class Diagnostic(patientID:String, date: Date, code: String)
class Medication(patientID: String, date: Date, medicine: String)
將.csv中的數據加載到藥物中:RDD [藥物]和診斷:
RDD [診斷]
val mpairs = medication.map(x=>(x.patientID,x))
val dpairs = diagnostic.map(x=>(x.patientID,x))
val data = mpairs.fullOuterJoin(dpairs)
'數據' 元組例如: (000496120-01,(一些(藥物(000496120-01,星期五2005年7月1日15點一十五分○○秒EDT,硫酸魚精蛋白)) ,一些(診斷(000496120-01,星期一2007年1月15:00:00 EST 2013,v70.0))))
type1_dm_dx et'al是要在
val cond1 = data.filter(x => type1_dm_dx.contains(x._2._2.last.code))
val data1 = data.subtractByKey(cond1)
val data2 = data1.filter(x => type2_dm_dx.contains(x._2._2.last.code))
val data3 = data2.filter(x => type1_dm_med.contains(x._2._1.last.medicine))
過濾器的代碼或藥物目錄
希望這有助於
你的問題的旁邊,'x._2._1'這看起來可疑,像不可讀的代碼/壞實踐。你可以閱讀'case class's。 –
您需要提供更多的上下文以獲得更有意義的幫助。我可以蒐集的是,它看起來像任何'x._2._1'是一個空的'List',結果調用'.last'就會拋出一個錯誤。 – badcook
提供了更多的上下文 – novicecoder123