繁体   English   中英

如何将dict类型直接加载到rdd

[英]how do I load a dict type directly to an rdd

我在python中取得了胜利

{'609232972': 4, '975151075': 4, '14247572': 4, '2987788788': 4, '3064695250': 2}

如何在不丢失键值对的情况下直接在rdd中加载它?

当我像这样加载它

usr_group = sc.parallelize(partition)
print(usr_group.take(5))

我只是打破键值对并给出

['609232972', '975151075', '14247572', '2987788788', '3064695250']

我期待着RDD闯入

{'609232972': 4, '975151075': 4, '14247572': 4, '2987788788': 4, '3064695250': 2}

这样我就可以一起处理键值对了

不确定你想要rdd作为一行,但这里有三个选项:

my_dict = {'609232972': 4, '975151075': 4, '14247572': 4, '2987788788': 4, '3064695250': 2}
rdd1 = sc.parallelize([my_dict])
rdd2 = sc.parallelize(list(my_dict.iteritems()))
rdd3 = rdd2.map(lambda x: (dict([x])))
print rdd1.collect()
print rdd2.take(4)
print rdd3.take(4)

[{'2987788788':4,'975151075':4,'3064695250':2,'14247572':4,'609232972':4}]

[('2987788788',4),('975151075',4),('3064695250',2),(''14247572',4)]

[{'2987788788':4},{'975151075':4},{'3064695250':2},{'14247572':4}]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM