본문 바로가기
Python/Python FAQ

Python NumPy를 사용하여 유클리드 거리를 어떻게 계산할 수 있나요?, How can the Euclidean distance be calculated with NumPy?

by 베타코드 2023. 7. 10.
반응형

질문


나는 3D 공간에서 두 점을 가지고 있습니다:

a = (ax, ay, az)
b = (bx, by, bz)

나는 그들 사이의 거리를 계산하고 싶습니다:

dist = sqrt((ax-bx)^2 + (ay-by)^2 + (az-bz)^2)

NumPy로 이것을 어떻게 할 수 있을까요? 나는 다음과 같이 가지고 있습니다:

import numpy
a = numpy.array((ax, ay, az))
b = numpy.array((bx, by, bz))

답변


numpy.linalg.norm를 사용하세요:

dist = numpy.linalg.norm(a-b)

이 작업은 유클리드 거리l2 norm이기 때문에 numpy.linalg.normord 매개변수의 기본값이 2인 것입니다. 더 많은 이론은 데이터 마이닝 소개를 참조하세요:

enter image description here

반응형

댓글