如何将函数应用于矩阵中的所有行?

时间:2013-10-31 10:09:21

标签: matlab

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

我希望我可以做标准(A,'行'),但这是不可能的。还有其他方法吗?

2 个答案:

答案 0 :(得分:8)

您可以在不转换为单元格阵列的情况下执行此操作:

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

答案 1 :(得分:1)

喜欢这个吗?

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

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

也许可以使用arrayfun吗?