PySpark实战:subtractByKey操作

来自CloudWiki
跳转至: 导航搜索

介绍

subtractByKey操作是一个变换算子

它的作用是从元素为KV格式的RDD中排除掉otherRDD中的元素,

只要两个RDD的元素Key一致,则排除,并返回一个新RDD.

代码

import findspark
findspark.init()
##############################################
from pyspark.sql import SparkSession
spark = SparkSession.builder \
        .master("local[1]") \
        .appName("RDD Demo") \
        .getOrCreate();
sc = spark.sparkContext
#############################################
x = sc.parallelize([("a", 1), ("b", 4), ("c", 5), ("a", 3)])
y = sc.parallelize([("a", 7), ("b", 0)])
z = x.subtractByKey(y)
#[('c', 5)]
print(z.collect())
##############################################
sc.stop()


输出

[('c', 5)]