2016-07-06 79 views
1

我想在这里做简单的过滤我RDD是在pyspark器有两个RDD

rdd1 = [96,104,112] 

rdd2 = [112, 30, 384, 96, 288, 352, 104, 368] 

所以结果应该是包含从RDD2其不在RDD1集元素RDD

所以看起来像,

rdd3 = [30,384,288,352,368] 

我们应该如何实现这个

我想这一个,

rdd3 = rdd1.map(lambda r: r != r in rdd2) 

但这不起作用。如何解决这个问题,

由于提前

回答

5

您可以使用subtract method其中:

返回未包含在其他自每个值。

rdd1 = sc.parallelize([96,104,112]) 
rdd2 = sc.parallelize([112, 30, 384, 96, 288, 352, 104, 368]) 

rdd2.subtract(rdd1).collect() 
## [384, 352, 368, 288, 30]