欧式距离计算文本相似度python代码
时间: 2023-09-03 12:15:33 浏览: 147
欧式距离是一种常用的文本相似度计算方法,可以用于比较两个文本之间的相似程度。下面是一个简单的Python代码示例,可以用来计算两个字符串之间的欧式距离。
```python
import math
def euclidean_distance(text1, text2):
# 将文本转换为向量
vector1 = text_to_vector(text1)
vector2 = text_to_vector(text2)
# 计算欧式距离
distance = 0.0
for key in vector1:
if key in vector2:
distance += (vector1[key] - vector2[key]) ** 2
else:
distance += vector1[key] ** 2
for key in vector2:
if key not in vector1:
distance += vector2[key] ** 2
return math.sqrt(distance)
def text_to_vector(text):
words = text.split()
vector = {}
for word in words:
if word in vector:
vector[word] += 1
else:
vector[word] = 1
return vector
# 测试
text1 = "This is a sample sentence."
text2 = "This is another example sentence."
distance = euclidean_distance(text1, text2)
print(distance)
```
该代码首先将文本转换为向量,然后使用欧式距离公式计算两个向量之间的距离。在这个示例中,我们使用空格将文本分成单词,并计算每个单词在文本中出现的次数作为向量的值。你可以根据需要对代码进行修改,以适应你的具体应用场景。
阅读全文