Допустим, у нас есть массив A = ones(2, 2, 2)
и другая матрица P = rand(4)
. Мне интересно, если это возможно, чтобы написать кодВыберите подматрицу и векторизовать в одной команде в MATLAB
temp = A(:, :, 1);
X = P * temp(:);
в одну строку кода, чтобы сохранить память, потребляемую temp
. Я попытался запустить
X = P * A(:, :, 1)(:);
но это не работает. Я также пошарил с командой reshape
, но не смог заставить ее работать.
Я не мог найти ответ, используя веб-сайт или этот форум. Можно ли делать то, что я ищу?
Спасибо за помощь,
Адриану
О, это может сработать. Я на самом деле делаю это итеративно, поэтому я мог бы даже исключить цикл for! – aeduG
Да, это было в основном мое предположение! – Divakar
Я просто попробовал, и он работает! Большое спасибо. Это второй раз, когда вы помогли мне с изменением проблемы! Вы являетесь мастером переиздания matlab! – aeduG