Bir NumPy dizisinin normuna sahip olmak istiyorum. Daha spesifik olarak, bu işlevin eşdeğer bir sürümünü arıyorum
def normalize(v):
norm = np.linalg.norm(v)
if norm == 0:
return v
return v / norm
Böyle orada şey mi skearn
yoksa numpy
?
Bu işlev v
, 0 vektörünün bulunduğu bir durumda çalışır .
raise
bir istisna olurdu !
x/np.linalg.norm(x)
çok daha yavaş olmadığını (yaklaşık% 15-20) buldum x/np.sqrt((x**2).sum())
.