예를 들어 "norm"기능을 고려하십시오. 나는 행렬을 가지고 있고, 행렬의 각 행에 "norm"을 적용하고,이 행렬의 각 행에 대한 모든 norm의 벡터를 얻고 싶습니다.행렬의 모든 행에 함수를 적용하는 방법은 무엇입니까?
내가 표준 (A, '행')을 수행 할 수 있었으면 좋겠지 만 그건 불가능합니다. 그것을 할 다른 방법이 있습니까?
예를 들어 "norm"기능을 고려하십시오. 나는 행렬을 가지고 있고, 행렬의 각 행에 "norm"을 적용하고,이 행렬의 각 행에 대한 모든 norm의 벡터를 얻고 싶습니다.행렬의 모든 행에 함수를 적용하는 방법은 무엇입니까?
내가 표준 (A, '행')을 수행 할 수 있었으면 좋겠지 만 그건 불가능합니다. 그것을 할 다른 방법이 있습니까?
좋아요?
M = 1e4;
N = 1e3;
A = randn(M, N);
% Solve
B = mat2cell(A, ones(M, 1), N);
b = cellfun(@norm, B);
어쩌면 arrayfun을 대신 사용할 수 있습니까?
당신은 셀 어레이로 변환하지 않고 그것을 할 수 있습니다 :
arrayfun(@(n) norm(A(n,:)), 1:size(A,1))
+1 쉽고 분명 빠른 세포로 변환하는 것보다. –