Rajesh Subramanian Rajesh Subramanian - 1 month ago 13
Python Question

Exception : "Invalid norm order for vectors" - Python

i was trying to normalize a vector in python using numpy. I did the following:

matrix_norm = numpy.linalg.norm(matrix1[:,0], ord='fro')
print(matrix_norm)


The matrix1 is of size: 1000 X 1400. I tried find the normalization value for the first column of the matrix. And it gives me the following exception:

"Invalid norm order for vectors"

Please help !
Thanks in advance... :)

Answer

ord='fro' is the Frobenius norm (https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.norm.html) and in numpy it is considered an invalid for vector norms (see https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.norm.html). If you want the 2-norm for vectors, just drop ord:

norm_of_first_column = numpy.linalg.norm(matrix1[:,0])