python怎么计算余弦值,python余弦定理求角
本篇文章小编给大家分享一下计算机编程语言求向量的余弦值操作代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
1、余弦相似度
余弦相似度衡量的是2个向量间的夹角大小,通过夹角的余弦值表示结果,因此2个向量的余弦相似度为:
余弦相似度的取值为[-1,1],值越大表示越相似。
向量夹角的余弦公式很简单,不在此赘述,直接上代码:
def cosVector(x,y):
if(len(x)!=len(y)):
打印("错误输入,x和y不在同一空间")
返回;
结果1=0.0;
结果2=0.0;
结果3=0.0;
对于范围内的我(len(x)):
result1=x[i]*y[i] #sum(X*Y)
结果2=X[I]* * 2 #总和(X*X)
结果3=Y[I]* * 2 #总和(Y*Y)
#打印(结果1)
#打印(结果2)
#打印(结果3)
print( result is str(结果1/((结果2 *结果3)* * 0.5)))#结果显示
余弦向量([2,1],[1,1])
一个计算二维数组余弦值的例子:
#求余弦函数
def cosVector(x,y):
if(len(x)!=len(y)):
打印("错误输入,x和y不在同一空间")
返回;
结果1=0.0;
结果2=0.0;
结果3=0.0;
对于范围内的我(len(x)):
result1=x[i]*y[i] #sum(X*Y)
结果2=X[I]* * 2 #总和(X*X)
结果3=Y[I]* * 2 #总和(Y*Y)
#打印(结果是str(结果1/((结果2 *结果3)* * 0.5)))#结果显示
返回结果1/((结果2 *结果3)**0.5)
#print(result is ,cosVector([2,1],[1,1]))
#计算查询输出(60,20)和数据库输出(60,20)的余弦值,用60*1的向量存储
cos result=[[0]* 1 for I in range(60)]
对于范围内的我(60岁):
cos结果[I][0]=cos向量(query _ output[I],db_output[i])
打印(成本结果)
-
#计算查询_输出和数据库输出的余弦值,用60*1的向量存储
row=查询输出。形状[0]#行数
cols=query_output.shape[1] #列数
cos result=[[0]* 1 for I in range(rows)]
对于范围内的我(行):
cos结果[I][0]=cos向量(query _ output[I],db_output[i])
#打印(成本结果)
#将结果存入文件中,并且一行一个数字
file=open(cosResult.txt , w )
对于cosResult中的我:
file.write(str(i)).替换([, )。替换(], ) \n) #\r\n为换行符
file.close()
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。