What does the function 'norm' do?

Please tell me what does the 2(in bold) in the below expression mean?
residsumsq = norm(y-yhat, 2 )^2;
Also, Is the norm function referring to summation? I read the documentation but it is not clear.

 Réponse acceptée

Walter Roberson
Walter Roberson le 21 Fév 2014

0 votes

n = norm(X) returns the 2-norm of input X and is equivalent to norm(X,2). If X is a vector, this is equal to the Euclidean distance. If X is a matrix, this is equal to the largest singular value of X.
The 2-norm is equal to the Euclidean length of the vector.
So it norm(x) is norm(x,2) is sqrt(sum(x.^2))

Plus de réponses (2)

Bruno Pop-Stefanov
Bruno Pop-Stefanov le 21 Fév 2014

8 votes

The second input argument of the "norm" function specifies the order of the norm you would like to use. The default norm is the 2-norm, which is the Euclidean distance.
The p-norm is the p-th root of the sum of the terms elevated to the p-th power, i.e.:

3 commentaires

Priya
Priya le 21 Fév 2014
Thank you. So, is it ok to write this way
SS_res=(y-yhat,2)^2
No, it would be
SS_res = (y-yhat)^2
There would normally be a sqrt() around the sum() but you then square the result of the norm, so that cancels out the sqrt()
Priya
Priya le 21 Fév 2014
Ya, I understood now. Thanks very much for your help.

Connectez-vous pour commenter.

dpb
dpb le 21 Fév 2014

0 votes

It's the order of the norm requested, in this case the "2-norm" which is the same thing as the Euclidean norm...

Catégories

En savoir plus sur Physics dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by