我有情况下,我必须字符串与RDD出(字符串)联合字符串在火花/斯卡拉
字符串结合1
date=
字符串2(字符串的RDD)
20140101
20140102
20140103
....
输出
date=20140101, date=20140102, date=20140103,.....
请帮我牛逼Ø实现这个结果
我有情况下,我必须字符串与RDD出(字符串)联合字符串在火花/斯卡拉
字符串结合1
date=
字符串2(字符串的RDD)
20140101
20140102
20140103
....
输出
date=20140101, date=20140102, date=20140103,.....
请帮我牛逼Ø实现这个结果
火花,你会是这样做的:
// Some sample data in an RDD
val data = List("20140101", "20140102", "20140103")
val rdd = sc.parallelize(data)
val concatenated = rdd.map(elem => s"date=$elem").reduce(_ + ", " + _)
注意reduce
是一个动作。因此减少的结果需要适合司机的记忆。
string2.map(d => s"$string1=$d").mkString(",")
感谢您的帮助,我需要它作为一个组合的字符串。所有的元组都应该连接起来。此解决方案不提供连接值。理想情况下,我应该做flatmap来将行转换为列(例如) – 2014-09-25 21:36:44
对不起,我不认为我理解。你能否详细说明一下? – Dani 2014-09-26 09:39:19
嗨,我得到不同日期的RDD [字符串],我有一个字符串变量val foo =“date =”。我需要连接输出和输出应该是一个字符串,即日期= 20140901,日期= 20140921,日期= 20140929 ...逗号分隔。 – 2014-09-26 09:46:36
避免尾随逗号:val concatenated = rdd.map elem => s“date = $ elem”)。reduce(_ +“,”+ _)' – Federico 2016-12-13 13:50:04
@Federico绝对正确。我已将您的反馈纳入答案中。谢谢! – maasg 2016-12-13 14:06:13