我有情況下,我必須字符串與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