Способ вызвать неявный цикл по столбцам матрицы - использовать cellfun. То есть сначала нужно преобразовать матрицу в массив ячеек, каждая ячейка будет содержать один столбец. Тогда позвоните в cellfun. Например:
A = randn(10,5);
Обратите внимание, что здесь я вычислил стандартное отклонение для каждого столбца.
cellfun(@std,mat2cell(A,size(A,1),ones(1,size(A,2))))
ans =
0.78681 1.1473 0.89789 0.66635 1.3482
Конечно, многие функции в MATLAB уже настроены для работы со строками или столбцами массива, как указывает пользователь. Это, конечно, верно для std, но это удобный способ проверить, что cellfun
успешно работал.
std(A,[],1)
ans =
0.78681 1.1473 0.89789 0.66635 1.3482