0
我有制表符分隔的文本文件。我只是基于数组元素的连接来提取密钥keyBy(_(6).trim() + "pr" + _(0))
。我的问题是我如何使它通用基于逗号分隔索引值,例如:我想通过逗号分隔索引(6,0)
与分隔符pr
,它会给出连接的关键。Spark RDD动态密钥生成器
val x = rawinput.map(_.split("\t"))
.keyBy(_(6).trim() + "pr" + _(0)) // extract key
.flatMap{ case (k, arr) => arr.take(7).zipWithIndex.map((k, _)) }
谢谢@Tzach。假设我们有多个分隔符,例如:keyBy(_(6).trim()+“pr”+ _(0)+“pm”+ _(0)+“pq”+ _(1))'then我们如何处理这种情况? – Souvik
你可以使用_tuples_来表示索引和分隔符,例如:'val indices = Seq((6,“pr”),(0,“pm”),(1,“”))'然后在' keyBy':'arr => indices.map {case(i,d)=> arr(i)+ d} .mkString()' –
您是天才@Tzach ...感谢您的帮助。 – Souvik