计算两个txt.files之间的相似度

时间:2019-10-22 08:09:56

标签: python text

我有两个文字不同的文本文件。重要的是,文本文件仅包含单词而不包含句子。 因此,第一个文件可能如下所示:xyz, acbe, eidjh, eheha.

我想计算这两个文本文件之间的相似度。我想以%的比率显示结果,但也要以相似的词来显示结果。

我读到了余弦相似度,但是我不确定这是否适用于我的问题!

1 个答案:

答案 0 :(得分:0)

一种简单的解决方案是,在读取文件并将它们拆分为单词之后,只是循环浏览它们,首先将它们分配给字典以计算每个文件的出现次数,然后计算相对比率,检查哪些单词同时出现并计算最终汇率:

temp1 = open('yourfile1.txt')
file1 = temp1.read().split(',')
temp1.close()
temp2 = open('yourfile2.txt')
file2 = temp2.read.split(',')
dict1 = {x : file1.count(x) for x in file1}
dict2 = {x : file2.count(x) for x in file2}
similars = set(file1).intersection(set(file2))
rate1 = sum(dict1[w] for w in similars)/len(file1)
rate2 = sum(dict2[w] for w in similars)/len(file2)
print("The rate of similarity is: ", rate1*rate2*100, '%')
print("The similar words are: ", similars)

yourfile1.txtyourfile2.txt当然是文件的名称。