Чтобы вычислить расстояние между двумя многомерными точками в Python, вы можете использовать различные методы. Вот несколько часто используемых подходов:
- Евклидово расстояние: Евклидово расстояние — это расстояние по прямой между двумя точками в евклидовом пространстве. В Python вы можете вычислить его с помощью функции
normбиблиотекиnumpyили модуляdistanceбиблиотекиscipy.
import numpy as np
point1 = np.array([x1, y1, z1]) # coordinates of point 1
point2 = np.array([x2, y2, z2]) # coordinates of point 2
euclidean_distance = np.linalg.norm(point1 - point2)
- Манхэттенское расстояние. Манхэттенское расстояние, также известное как расстояние городского квартала или норма L1, представляет собой сумму абсолютных разностей между координатами двух точек. Он рассчитывается с помощью функции
absбиблиотекиnumpy.
manhattan_distance = np.sum(np.abs(point1 - point2))
- Расстояние Минковского. Расстояние Минковского — это обобщенная метрика расстояния, включающая в качестве особых случаев евклидово и манхэттенское расстояния. Его можно рассчитать с помощью модуля
distanceбиблиотекиscipy.
from scipy.spatial import distance
minkowski_distance = distance.minkowski(point1, point2)