火花反转指数

时间:2018-10-31 23:11:33

标签: python apache-spark indexing

我正在创建文档的反向索引,其中输出应包含一个单词(来自文本文件),后跟出现的所有文件以及每个文件中出现的次数。像

  

word1:doc1.txt:doc1中出现的次数,doc2.txt:doc2,doc3中出现的次数...

     

word2:doc1.txt:在doc1中出现的次数,doc2.txt:在doc2,doc3中出现的次数...

我能够输出单词及其包含的文档,但是在计算每个文档中每个单词的实例时遇到麻烦。

代码:

from pyspark import SparkConf, SparkContext
sc = SparkContext("local", "app")
text=sc.wholeTextFiles('/folder')

output = text.flatMap(lambda (file,contents):[(file, word) for word in contents.lower().split()])\
            .map(lambda word: (word, 1))\
            .map(lambda (file, word): (word,[file]))\
            .reduceByKey(lambda a,b: a+b)

0 个答案:

没有答案