在 RDD 的过滤器转换中没有得到预期的结果

Posted

技术标签:

【中文标题】在 RDD 的过滤器转换中没有得到预期的结果【英文标题】:Not getting the expected result in filter transformation for RDD 【发布时间】:2019-10-03 07:48:31 【问题描述】:

我已经加载了一个文本文件并应用了转换(过滤器)但没有得到预期的结果。代码和结果低于

stopwords = ['MP','UP']
2
rdd3 = ARDD.filter(lambda x: x not in stopwords)
3
rdd3.take(10)
(2) Spark Jobs
Out[22]: ['MP , rajasthan, UP , Kashmir , delhi , haryana , punjab ']

【问题讨论】:

如果您在 pyspark 中工作,那么您为什么使用 RDD 而不是 DataFrame?? @AtlasBravoos 我在 dataframe 中使用过 pyspark 。所以我正在尝试使用 RDD 。是这个问题的原因吗? 什么是 ARDD?请详细说明 @PrathikKini 我刚刚命名了一个 RDD ARDD 【参考方案1】:

您的问题似乎是ARDD 包含一个包含您所有单词的字符串元素。 尝试以不同的方式加载您的数据以逐行输入,您的过滤器将起作用。

【讨论】:

【参考方案2】:
ARDD = sc.parallelize(['MP' , 'rajasthan', 'UP' , 'Kashmir' , 'delhi' , 'haryana' , 'punjab'])
stopwords = ['MP','UP']
rdd3 = ARDD.filter(lambda x: x not in stopwords)
rdd3.take(10)

Out[10]: ['rajasthan', 'Kashmir', 'delhi', 'haryana', 'punjab']

【讨论】:

以上是关于在 RDD 的过滤器转换中没有得到预期的结果的主要内容,如果未能解决你的问题,请参考以下文章

具有精确词匹配搜索的 RDD 过滤器

在pyspark中过滤两个RDD

Fitter Spark RDD 基于过滤不同 RDD 的结果

核心图像过滤器 CISourceOverCompositing 未按预期显示与 alpha 叠加

火花,在DataFrame(或RDD)上多次应用过滤器,而没有多余的评估

Spark RDD数据过滤