2024-03-29 08:26:41 发布
网友
我有一个piplelinedRDD中存储的字典列表,如下所示:
[{ZDX: ID_42, XCZ: ID_32, ZXD: ID_434}, {ZDX: ID_69, XXF: ID_30, HGL: ID_239, XCZ: ID_01}]
我想要一个看起来像这样的输出
因为它存储在pipelinedRDD中,所以字典也不可编辑。在
我用整数作为字典的值,如果你有字符串,过程是一样的。在
启动RDD
>>> rdd = sc.parallelize([{'ZDX': 42, 'XCZ': 32, 'XD': 434}, {'ZDX': 69, 'XXF': 30, 'HGL': 239, 'XCZ': 1}])
创建一个包含元组的RDD,该元组表示您的对(键、值):
按键分组:
>>> groupedItems = items.groupByKey().mapValues(list) >>> groupedItems.take(groupedItems.count()) >>> [('XCZ', [32, 1]),('ZDX', [42, 69]), ('XXF', [30]),('HGL', [239]), ('XD', [434])]
使用collectAsMap从RDD中获取词典
>>> d = groupedItems.collectAsMap() >>> {'HGL': [239], 'XCZ': [32, 1], 'XD': [434], 'XXF': [30], 'ZDX': [42, 69]}
我用整数作为字典的值,如果你有字符串,过程是一样的。在
启动RDD
创建一个包含元组的RDD,该元组表示您的对(键、值):
^{pr2}$按键分组:
使用collectAsMap从RDD中获取词典
相关问题 更多 >
编程相关推荐