如何使用pyspark计算n(x,y)/ n(x)* n(y)

时间:2019-07-16 16:39:49

标签: pyspark

现在我有这样的文本数据格式,a1:a2:a3 \ tb1:b2:b3,我想计算pmi(x,y)= n(x,y)/ n(x)* n( y),如何使用pyspark保护它

从公式开始,应分别计算x和y,然后生成组合键,如(a1,b1),(a1,b2),(a1,b3)**。作为pyspark初学者,我不知道如何生成组合键,然后一一计算n(x,y)/ n(x)* n(y)。

wordCount1= textFile.flatMap(lambda line: line.split("\t")[0].split(":").map(lambda word:(word,1)).reduceByKey(lambda a, b : a + b)
wordCount2= textFile.flatMap(lambda line: line.split("\t")[1].split(":").map(lambda word:(word,1)).reduceByKey(lambda a, b : a + b)

以及如何生成组合键并计算结果

0 个答案:

没有答案