norm - Printable Version +- Python Forum (https://python-forum.io) +-- Forum: Python Coding (https://python-forum.io/forum-7.html) +--- Forum: Data Science (https://python-forum.io/forum-44.html) +--- Thread: norm (/thread-16942.html) |
norm - mcgrim - Mar-21-2019 I am writing a program that takes a vector as parameter and returns the corresponding normalized vector. The first part of the program attempts this task manually (without the function 'norm') and the second part is with the 'norm' function. I have written them both and the program runs but I cannot understand why I get different outcomes. I get 1.06 in the fist part and 3.74 in the second. why? (both parts are separated by #------------------------------------) import numpy as np from numpy import array from scipy.linalg import norm """ V=[1,2,3] n_vec=sqrt(V[0]**2+V[1]**2+V[2]**3) def v_vector(V): return ((V[0]/n_vec)+(V[1]/n_vec)+(V[2]/n_vec)) print(v_vector(V)) """ #----------------------------------------------------------- V=[1,2,3] def v_vector(V): return (linalg.norm(V)) print(v_vector(V)) I solved this issue myself, but I am not sure how to remove this post. RE: norm - nilamo - Mar-21-2019 So what was the solution? RE: norm - mcgrim - Mar-22-2019 the second step is actually correct but incomplete as it merely calculated the norm instead of the whole unit vector. |