此代码可在python 2.x上正常工作的问题n Apache中新的python 3.5引发了如何查找有关此问题的工作,执行元组串联。 代码。
from pyspark.mllib.stat import Statistics
import random
column1 = sc.parallelize(range(100))
column2 = sc.parallelize(range(100,200))
column3 = sc.parallelize(list(reversed(range(100))))
column4 = sc.parallelize(random.sample(range(100),100))
data = column1.zip(column2).zip(column3).zip(column4).map(lambda (((a,b),c),d) : (a,b,c,d) ).map(lambda (a,b,c,d) : [a,b,c,d])
print(Statistics.corr(data))
错误
File "<ipython-input-19-e505a170fcab>", line 7
data = column1.zip(column2).zip(column3).zip(column4).map(lambda (((a,b),c),d) : (a,b,c,d) ).map(lambda (a,b,c,d) : [a,b,c,d])
^
SyntaxError: invalid syntax
通常当这项工作只有两个部分时
rdd.map(lambda x_y: (x_y[1], x_y[0])
但是具有这样的元组((((a,b),c),d)如何做到
答案 0 :(得分:0)
您可以替换:
jooq-codegen
与
.map(lambda (((a,b),c),d) : (a,b,c,d) ) \
.map(lambda (a,b,c,d) : [a,b,c,d])