una - titulo grafica matlab
aplicando la funciĆ³n de norma a las filas de la matriz-Matlab (3)
Qué pasa
norms = sqrt(sum(A.^2,1))
o
norms = sqrt(sum(A.^2,2))?
dependiendo de si sus coordenadas están en filas o en columnas.
Esta pregunta ya tiene una respuesta aquí:
- Vector norma de una matriz de vectores en MATLAB 3 respuestas
Tengo una matriz de 3 columnas, n filas:
[ a,b,c;
d,e,f;
g,h,i; ]
Quiero aplicar la función de norma a cada una de las filas y obtener una matriz 1xn
que contenga las normas:
[ norm([a,b,c]);
norm([d,e,f]);
norm([g,h,i]); ]
Podría hacer esto con un bucle for, pero ¿hay una mejor manera?
si la primera dimensión no es demasiado grande:
norms = sqrt(diag(A * A''));
Si la legibilidad es una consideración mayor que el rendimiento, también podría considerar:
norms = cellfun(@norm,num2cell(A,2));
Este patrón también se puede adaptar a otras operaciones a lo largo de una dimensión que puede realizar cuando MATLAB no lo admite de forma nativa.