2013-10-31 45 views
3

考虑例如函数“norm”。我有一个矩阵,我想对矩阵中的每一行应用“规范”,并获得矩阵中每行的所有规范的向量。如何将函数应用于矩阵中的所有行?

我曾希望能做到规范(A,'行'),但这是不可能的。有其他方法可以做到吗?

回答

1

是否这样?

M = 1e4; 
N = 1e3; 
A = randn(M, N); 

% Solve 
B = mat2cell(A, ones(M, 1), N); 
b = cellfun(@norm, B); 

也许arrayfun可以用来代替?

8

你可以不用转换为一个单元阵列:

arrayfun(@(n) norm(A(n,:)), 1:size(A,1)) 
+0

+1更容易,不是转换成细胞明显更快。 – 2013-10-31 10:35:16

相关问题