【问题标题】:how to use split in spark scala?如何在 spark scala 中使用拆分?
【发布时间】:2016-03-11 04:32:02
【问题描述】:

我有一个输入文件,看起来像:

1:3 5 7

3:6 9

2:5

......

我希望得到两个列表 第一个列表由“:”之前的数字组成,第二个列表由“:”之后的数字组成。 上例中的两个列表是:

1 3 2

3 5 7 6 9 5

我只是写了如下代码:

 val rdd = sc.textFile("input.txt");

 val s = rdd.map(_.split(":"));

但不知道如何实现以下内容。谢谢。

【问题讨论】:

    标签: scala apache-spark


    【解决方案1】:

    我会使用平面地图! 所以,

    val rdd = sc.textFile("input.txt")
    val s = rdd.map(_.split(": ")) # I recommend adding a space after the colon
    val before_colon = s.map(x => x(0))
    val after_colon = s.flatMap(x => x(1).split(" "))
    

    现在你有两个 RDD,一个包含冒号之前的项目,一个包含冒号后面的项目!

    如果冒号前的文本部分可能有多个数字,例如1 2 3:4 5 6,我会写val before_colon = s.flatMap(x => x(0).split(" "))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-03
      相关资源
      最近更新 更多