用python 實現各類數學距離

2021-08-11 08:46:35 字數 1086 閱讀 2116

1 、實現歐氏距離

import numpy as np

import math

a = np.mat([1,2,3])

b = np.mat([4,7,5])

ed = np.sqrt((a-b) * (a-b).t) ##實現歐氏距離

2、實現曼哈頓距離
mht = np.sum(np.abs(a-b)) ## 實現曼哈頓距離
3、實現切比雪夫距離
chbsh = np.max(np.abs(a-b)) ##實現切比雪夫距離
4 、實現夾角余弦
cosab = np.dot(a, b.t)/(np.linalg

.norm(a) * np.linalg

.norm(b)) #dot 兩個向量的點乘,norm() 求向量的範數

5、實現漢明距離

漢明距離:兩個等長的字串s1 與 s2 之間的漢明距離為 s1(s2) 變成s2(s1) 所需要的最小替換次數。eg: 『abc』 與』abb』 漢明距離為1

python實現:

#實現漢明距離

a = np.mat([1,2,3,4,5])

b = np.mat([1,2,3,3,4])

smstr = np.nonzero(a - b)

hmng = np.shape(smstr[0])[0]

6、傑卡德相似係數與傑卡德距離

傑卡德相似係數:a、b兩個集合的交集在並集中所點的比例

傑卡德距離:與傑卡德相似係數相反, = 1 - 傑卡德相似係數

python 實現:

from numpy import *

import scipy.spatial.distance as dist

#實現傑卡德距離

matv = np.mat([[1,2,3,4,5],[1,2,3,3,4]])

jcrd = dist.pdist(matv,'jaccard') ##

python數學方程計算 用Python解方程

一元一次方程 例題1 這是北師大版小學六年級上冊課本95頁的一道解方程練習題 大家可以先口算一下,這道題裡面的x的值為200 接下來我們用python來實現,如下,每一句 後面都寫有解釋語 一元一次方程 x sy.symbols x 申明未知數 x a sy.solve x 1 5 x 240 x ...

5,python實現 素數距離

輸入乙個整數n,輸出整數n相鄰最近的兩個素數 如果左右素數距離相同,則輸出左側素數以及相應的距離 如果整數n本身是素數,則輸出自己本身,距離為0 記錄距離 min long 0 記錄數值 min num 0 def main global min long global min num in num...

python實現點到平面的距離

目錄 python實現點到平面的距離 1.三點定面 2.點到面的距離 3.python實現點到面的距離 關於點線面之間關係可以參考 空間上任意三個不共線的點,可以確定乙個平面,三點定面的例子 點到面的距離,可參考這個例子 空間上不共線的三個點p1,p2,p3確定乙個平面,計算空間上某個點p4到組成的...