gpt4 book ai didi

scala - 如何将 RDD[(String, String)] 转换为 RDD[Array[String]]?

转载 作者:行者123 更新时间:2023-12-04 17:46:36 26 4
gpt4 key购买 nike

我正在尝试将文件名附加到文件中的每条记录。我想如果 RDD 是 Array 对我来说很容易做到。

非常感谢转换 RDD 类型或解决此问题的一些帮助!

在(字符串,字符串)类型

scala> myRDD.first()(1)    
scala><console>:24: error: (String, String) does not take parametersmyRDD.first()(1)

在数组中(字符串)
scala> myRDD.first()(1)    
scala> res1: String = abcdefgh

我的功能:
def appendKeyToValue(x: Array[Array[String]){
for (i<-0 to (x.length - 1)) {
var key = x(i)(0)
val pattern = new Regex("\\.")
val key2 = pattern replaceAllIn(key1,"|")
var tempvalue = x(i)(1)
val finalval = tempvalue.split("\n")
for (ab <-0 to (finalval.length -1)){
val result = (I am trying to append filename to each record in the filekey2+"|"+finalval(ab))
}
}
}

最佳答案

如果您有 RDD[(String, String)] ,您可以通过调用访问第一个元组的第一个元组字段

val firstTupleField: String = myRDD.first()._1

如果要转换 RDD[(String, String)]RDD[Array[String]]您可以执行以下操作
val arrayRDD: RDD[Array[String]] = myRDD.map(x => Array(x._1, x._2))

您还可以使用偏函数来解构元组:
val arrayRDD: RDD[Array[String]] = myRDD.map { case (a,b) => Array(a, b) }

关于scala - 如何将 RDD[(String, String)] 转换为 RDD[Array[String]]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32583340/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com