NumPyを使用してユークリッド距離を計算する方法
NumPyはPythonの科学計算用ライブラリであり、ユークリッド距離を計算する際に便利な機能を提供しています。ユークリッド距離は、2つの点間の直線距離を表す指標であり、機械学習やデータ解析などの分野で広く使用されています。
ユークリッド距離の計算方法
2つの点A(x1, y1)とB(x2, y2)のユークリッド距離は以下の式で表されます。
d = √((x2 – x1)^2 + (y2 – y1)^2)
NumPyを使用したユークリッド距離の計算
import numpy as np # 2つの点を定義 point1 = np.array([1, 2]) point2 = np.array([4, 6]) # ユークリッド距離を計算 distance = np.linalg.norm(point2 - point1) print(distance)
上記のコードでは、NumPyのnp.linalg.norm関数を使用して2つの点のユークリッド距離を計算しています。point2からpoint1を引いてユークリッド距離を求めることで、直線距離が計算されます。
複数の点のユークリッド距離を計算
points = np.array([[1, 2], [4, 6], [3, 1]]) # 各点との距離を計算 distances = np.linalg.norm(points - points[:, np.newaxis], axis=2) print(distances)
上記のコードでは、複数の点とのユークリッド距離を一度に計算しています。np.newaxisを使用して次元を追加し、axis=2を指定することで各点との距離が計算されます。
NumPyを使ってユークリッド距離を計算することで、効率的に数値計算を行うことができます。機械学習やデータ解析の際には、NumPyを活用してユークリッド距離を簡単に計算できるので、積極的に利用すると良いでしょう。
NumPyを使用してユークリッド距離を計算するには、まずNumPyライブラリをインポートします。次に、2つのベクトルを表すNumPy配列を作成します。その後、np.linalg.norm関数を使用して、2つのベクトル間のユークリッド距離を計算できます。以下は、具体的なコード例です。
“`python
import numpy as np# 2つのベクトルを表すNumPy配列を作成
vector1 = np.array([1, 2, 3])
vector2 = np.array([4, 5, 6])# ユークリッド距離を計算
distance = np.linalg.norm(vector1 – vector2)print(distance)
“`このコードでは、`np.linalg.norm(vector1 – vector2)`の部分で、2つのベクトルの差を計算し、その結果のノルム(ユークリッド距離)を求めています。計算結果は`distance`変数に格納され、出力されます。