Python'da öklid uzaklığı nasıl hesaplanır (örneklerle)
İki vektör A ve B arasındaki Öklid mesafesi şu şekilde hesaplanır:
Öklid uzaklığı = √ Σ(A i -B i ) 2
Python’da iki vektör arasındaki Öklid mesafesini hesaplamak için numpy.linalg.norm işlevini kullanabiliriz:
#import functions import numpy as np from numpy. linalg import norm #define two vectors a = np.array([2, 6, 7, 7, 5, 13, 14, 17, 11, 8]) b = np.array([3, 5, 5, 3, 7, 12, 13, 19, 22, 7]) #calculate Euclidean distance between the two vectors norm(ab) 12.409673645990857
İki vektör arasındaki Öklid mesafesi 12,40967 olarak ortaya çıkıyor.
İki vektörün aynı uzunlukta olmaması durumunda bu fonksiyonun bir uyarı mesajı üreteceğini unutmayın:
#import functions import numpy as np from numpy. linalg import norm #define two vectors a = np.array([2, 6, 7, 7, 5, 13, 14]) b = np.array([3, 5, 5, 3, 7, 12, 13, 19, 22, 7]) #calculate Euclidean distance between the two vectors norm(ab) ValueError : operands could not be broadcast together with shapes (7,) (10,)
Bu işlevi bir pandanın DataFrame’inin iki sütunu arasındaki Öklid mesafesini hesaplamak için de kullanabileceğimizi unutmayın:
#import functions import pandas as pd import numpy as np from numpy. linalg import norm #define DataFrame with three columns df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29], 'assists': [5, 7, 7, 9, 12, 9, 9, 4], 'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]}) #calculate Euclidean distance between 'points' and 'assists' norm(df[' points '] - df[' assists ']) 40.496913462633174
İki sütun arasındaki Öklid mesafesi 40,49691 olarak çıkıyor.
Yorumlar
1. Python’da Öklid mesafesini hesaplamanın birkaç yolu vardır, ancak bu Yığın Taşması başlığında açıklandığı gibi, burada açıklanan yöntemin en hızlı olduğu ortaya çıkıyor.
2. Numpy.linalg.norm işlevinin tam belgelerini burada bulabilirsiniz.
3. Öklid uzaklığı hakkında daha fazla bilgi edinmek için bu Wikipedia sayfasına başvurabilirsiniz .