Java 如何在操作中忽略RDD字符串的一部分

Java 如何在操作中忽略RDD字符串的一部分,java,apache-spark,rdd,Java,Apache Spark,Rdd,我有一个文件,每行的结构如下: 500, 1733345329, A, ugly, 500, 1230, 99 2, 1171253353, picB, wow, 1660, 20, 213 ... 我的目标是操纵每行的最后3位数字(500123099),并将is作为键附加到第一个int。在这种情况下,有没有一种方法可以使用map,在这种情况下,我可以提取字符串中的这些部分,并在诸如求和之类的操作中使用它们 编辑:我忘了提到我正在用Java做这件事,你可以读入文本文件,用逗号分割行,然后映射到

我有一个文件,每行的结构如下:

500, 1733345329, A, ugly, 500, 1230, 99
2, 1171253353, picB, wow, 1660, 20, 213
...
我的目标是操纵每行的最后3位数字(500123099),并将is作为键附加到第一个int。在这种情况下,有没有一种方法可以使用map,在这种情况下,我可以提取字符串中的这些部分,并在诸如求和之类的操作中使用它们


编辑:我忘了提到我正在用Java做这件事,你可以读入文本文件,用逗号分割行,然后映射到一个元组,第一个整数作为键,最后三个整数的数组作为值

val rdd = sc.textFile("filepath.txt")

val rdd2 = rdd.map(_.split(", ")).map(r => (r(0).toInt, Array(r(4), r(5), r(6)).map(_.toInt)))
// rdd2: org.apache.spark.rdd.RDD[(Int, Array[Int])]

rdd2.collect
// Array[(Int, Array[Int])] = Array((500,Array(500, 1230, 99)), (2,Array(1660, 20, 213)))

感谢您的回复,我忘了提到我是用Java做这件事的。我理解您提出的流程,但我不知道如何在Java中按语法执行此逻辑。