在map函数中实现IF条件spark scala

时间:2015-10-21 14:29:59

标签: scala apache-spark

val keyValue = parsedData.map(x => (x.col1,x.col2,
  if(x.col3 = "a") "0.1" 
  else if(x.col3 = "b") "0.2" 
  else if(x.col3 = "c") "0.3" 
  else if(x.col3 = "d") "0.4"     
  else if(x.col3 = "e") "0.5"))

我的parsedData rdd有3列,对于我的第三列,我正在尝试执行上述操作,您可能已经猜到它不起作用。

有任何想法如何实现这个?

1 个答案:

答案 0 :(得分:1)

有几个问题:

  1. 您应该使用blankPage代替==
  2. 你需要一个=或者你的第三个项目的类型将是Unit ...但是仍然可以编译。最坏的情况是,您应该使用else