使用pyspark查找文档中的术语列表

时间:2018-09-25 08:43:36

标签: python apache-spark pyspark

我有两个文档(1.tmt和2.tmt)作为RDD放在一起。

1.tmt包含以下内容:

1 Name name name name
2 hol olallall olelpqwl 
3 Nema Nam name 
4 alasdflasdfNamelasdf
5 asdoew Name pawolfe Build
6 Build asldpf Build Name

2.tmt包含以下内容:

11 namenameNamenameNamename
12 osaoOOOPsdaflwfeöäöäewÄÄ#
13 otzopafjfNampeüäMNameöääÄ äaää NasöNameöäöl
14 ppafsasdnameas
15 BuildbuildBuild
16 Name Build

我有一个.txt,其中包含我要查找的术语(在这种情况下为“名称”和“构建”),每个术语一行。

我想获取包含searchTerms.txt中现有术语的行。我有以下代码:

from pyspark import SparkContext, SparkConf
from pyspark.sql import SparkSession
sc = SparkContext(conf=SparkConf())
files = sc.textFile("./data/ethernet")
words = []
with open('searchTerms.txt', 'r') as file:
    words = file.read().splitlines()
for i in range(0, len(words)):
    changes.append(files.filter(lambda line: words[i] in line).collect())

它可以工作,但是我想直接在pyspark中将所有术语搜索到文档中。这可能吗?谢谢。

编辑:我已经尝试了一些double lambda,但是我无法使其正常工作。也许解决方案就是这样。

0 个答案:

没有答案