Fill a nxm matrix with vectorised expression
조회 수: 1 (최근 30일)
이전 댓글 표시
Hi all,
here my doubt: i have a matrix M with dimensions nxm. The matrix is initially initialised with zeros, and i fill each M(i,j) calling another function:
M = zeros(n,m)
for i = 1:n
for j = 1:m
M(i,j) = another_function(several_inputs);
end
end
is it possible to fill the matrix M without the for loops, but instead using a vectorised expression?
Thanks
댓글 수: 4
Konstantin
2020년 10월 16일
sometimes it works to vectorize the function itself
matrix = another_function(matrix)
채택된 답변
Matt J
2020년 10월 16일
편집: Matt J
2020년 10월 16일
No, there is no way to vectorize an element-wise function generically, without considering the specifics of the function. You can avoid for-loop syntax by using arrayfun, but this simply hides the loops from view, it doesn't replace them with something more efficient.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrix Indexing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!