【问题标题】:Error: org.apache.spark.rdd.RDD[(String,Int)] does not take parameters错误:org.apache.spark.rdd.RDD[(String,Int)] 不带参数
【发布时间】:2016-12-11 15:42:46
【问题描述】:

age.foreach(println)

1,5
2,25
3,30

年龄有id和年龄。现在我必须创造像 如果(年龄>=1 && 年龄=10 && age

所以上述数据的结果应该是

1、1-10

2、10-20

3、30+

Val ager = age.map(x => (x(0),(If(x(1)>=1 && x(1)<10) "1-         10"
Else if(x(1) >=10 && x(1)<20) "10-20"
Else "30+")))

我收到以下错误: 错误:org.apache.spark.rdd.RDD[(String,Int)] 不带参数

请帮我解决这个问题。

【问题讨论】:

    标签: scala apache-spark rdd


    【解决方案1】:

    元组元素不能像x(0) 那样访问,而是x._1

    这应该可行:

    val ager = age.map(x =>
      (x._1, (if (x._2 >= 1 && x._2 < 10) "1-         10"
      else if (x._2 >= 10 && x._2 < 20) "10-20"
      else "30+"))
    )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-17
      • 2020-06-21
      • 1970-01-01
      • 2018-02-28
      • 2021-09-24
      相关资源
      最近更新 更多