Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用pyspark创建自动增量键值_Python_Hadoop_Apache Spark_Pyspark - Fatal编程技术网

Python 使用pyspark创建自动增量键值

Python 使用pyspark创建自动增量键值,python,hadoop,apache-spark,pyspark,Python,Hadoop,Apache Spark,Pyspark,我有rdd,列表如下: ['a','b','c'] 如何使用键值创建新的rdd,如: {0:'a', 1:'b', 2:'c'} 这很容易: >>> data = ['a', 'b', 'c'] >>> distData = sc.parallelize(data) >>> distData.collect() ['a', 'b', 'c'] >>> distData = distData.zipWithIndex()

我有
rdd
,列表如下:

['a','b','c']
如何使用键值创建新的
rdd
,如:

{0:'a', 1:'b', 2:'c'}
这很容易:

>>> data = ['a', 'b', 'c']
>>> distData = sc.parallelize(data)
>>> distData.collect()
['a', 'b', 'c']

>>> distData = distData.zipWithIndex()
>>> distData.collect()
[('a', 0), ('b', 1), ('c', 2)]

>>> distData = distData.map(lambda (x, y): (y,x))
[(0, 'a'), (1, 'b'), (2, 'c')]
如果要将索引作为键,则需要映射以交换键值。

这非常简单:

>>> data = ['a', 'b', 'c']
>>> distData = sc.parallelize(data)
>>> distData.collect()
['a', 'b', 'c']

>>> distData = distData.zipWithIndex()
>>> distData.collect()
[('a', 0), ('b', 1), ('c', 2)]

>>> distData = distData.map(lambda (x, y): (y,x))
[(0, 'a'), (1, 'b'), (2, 'c')]

如果希望索引作为键,则需要映射以交换键值。

您可以使用for循环轻松生成它。

lis = ['a','b','c']
dic = {}
for x in range(len(lis)):
   dic[x] = lis[x]

print dic 
在这段代码中,我们将列表中的每个项目添加到字典中,列表的索引值作为键值。

输出:

{0: 'a', 1: 'b', 2: 'c'}

您可以使用for循环轻松生成它。

lis = ['a','b','c']
dic = {}
for x in range(len(lis)):
   dic[x] = lis[x]

print dic 
在这段代码中,我们将列表中的每个项目添加到字典中,列表的索引值作为键值。

输出:

{0: 'a', 1: 'b', 2: 'c'}

你想要的只是从这个列表中获得
{0:'a',1:'b',2:'c'}
?我投票把这个问题作为离题题来结束,因为它的质量很低,而且根本没有表现出任何努力。你想要的只是获得
{0:'a',1:'b',2:'c'}
从该列表中?我投票将此问题作为离题题结束,因为它的质量非常低,而且根本没有任何效果。谢谢你,但我想使用pyspark。谢谢你,但我想使用pyspark。