距離を計算するためにこのコードを書いた。しかし、ValueError: math domain error
のエラーが表示されます。イテレーションで多次元行列の距離を計算する
import math
a=[[5, 10],
[16, 23]]
b=[[6, 1], [21, 2]]
dL=[]
dist=[]
k=0
h=1
for i in range(len(a)):
dL=[]
for j in range(len(a)):
d=math.sqrt((a[i][k]-b[j][k])^2 + (a[i][h]-b[j][h])^2)
dL.append(d)
dist.append(dL)
、d
は次のようになります。
i=0, j=0: d=sqrt((5-6)^2+(10-1)^2)
i=0, j=1: d=sqrt((5-21)^2+(10-2)^2)
i=1, j=0: d=sqrt((16-6)^2+(23-1)^2)
i=1, j=1: d=sqrt((16-21)^2+(23-2)^2)
'^2'は正方形ではなく、XORです。 – ForceBru
'x ** y'を使って' x'を 'y'番目の力に上げます。 – blacksite
dを計算すると同じ行のdを4桁に丸める方法 – user02