【发布时间】:2019-10-14 02:24:08
【问题描述】:
我有一个 rdd 对象(从文本文件创建),我正在通过使用完全匹配的词过滤来创建另一个 rdd 对象。
rdd2 = rdd1.filter(lambda x: word in x)
word 是在 for 循环中生成的字符串。所以我将在循环中搜索rdd1 中的一些单词。例如,如果我的单词值是“电子书”。所以,当我搜索 rdd1 时,我得到了与电子书匹配的所有行。但是,我也得到了价值“电子书”的线路。
如何过滤一个完全匹配的rdd? rdd2 应包含仅包含完全匹配单词的行,即 ebook 而不是 ebooks。
我需要为进一步的进程创建一个中间 rdd。请帮忙。
【问题讨论】:
-
可能:
rdd2 = rdd1.filter(lambda x: word in x.split()) -
谢谢。 x.split() 用于精确的单词匹配。
标签: python apache-spark pyspark rdd