2017-06-19 7 views
0

これは自宅仕事の質問です。私はリストの 'n'を含むrddをpythonマップに変換したい。rddのリストをpythonのマップに変換するには?

RDD - 私は上記のようなのdictたい最初の繰り返しで

{100 : NO, 101 : OR, 102 : -0.00955461556684, 103 : 0.799738137456, 104 : -0.619426440691, 105 : -0.505799761741, 106 : 1.06018348173, 107 : -0.203731351216 , 108 : 0.242253668965, 109 : 20170411, 110 : 14:47:54} 

-

sc.parallelize([[main_map.update({i.split('=')[0] : i.split('=')[1]}) for i in j] for j in rdd.toLocalIterator()]) 

期待回答 -

[[u'100=NO', u'101=OR', u'102=-0.00955461556684', u'103=0.799738137456', u'104=-0.619426440691', u'105=-0.505799761741', u'106=1.06018348173', u'107=-0.203731351216', u'108=0.242253668965', u'109=20170411', u'110=14:47:54'], [u'100=NO', u'101=OR', u'102=1.09790894815', u'103=-0.591742622246', u'104=0.60404467739', u'105=-0.729487378829', u'106=-0.41507842821', u'107=-1.01921955205', u'108=-0.153191948561', u'109=20170411', u'110=14:47:56'], [u'100=NO', u'101=OR', u'102=-0.0845031955962', u'103=0.428040384808', u'104=0.0579505934162', u'105=0.893705789837', u'106=-0.544258436965', u'107=1.10990090862', u'108=0.740638990995', u'109=20170411', u'110=14:47:58'], [u'100=NO', u'101=OL', u'102=1.20406493416', u'103=-0.275962563807', u'104=-0.728142212616', u'105=2.04751448847', u'106=2.10361125056', u'107=0.588650303087', u'108=-0.693327897822', u'109=20170411', u'110=14:48:00']] 

私のようなを試してみました。

しかし、これはpythonマップで変換するための良い方法ではありません。私が正確にしたいものを達成するために、彼らの特定の機能や方法はありますか?ただ、

答えて

0

rdd = sc.parallelize(data).map(lambda x: dict(map(lambda y: str(y).split('='), x))) 
関連する問題