Swapping last matrix columns
이전 댓글 표시
function [ newMatrixA, newMatrixB ] = SwapLastColumns( matrixA, matrixB )
% SwapLastColumns: Exchange the last columns of input matrices
% matrixA and matrixB and return new matrices.
% Inputs: matrixA, matrixB - input matrices, must have same
% number of rows so columns can be swapped
%
% Outputs: newMatrixA, newMatrixB - returned new matrices created
% from input matrices with last
% columns swapped
% Assign tempColumn with last column matrixA
tempColumn = matrixA(:, end); % FIXME
% Assign newMatrixA with first columns of matrixA and last
% column of matrixB
newMatrixA = [matrixA(:,end-1), matrixB(:,end)]; % FIXME
% Assign newMatrixB with first columns of matrixB and last
% column of matrixA
newMatrixB = [matrixB(:,end-1), matrixA(:,end)]; % FIXME
end
As you can see above, I've written code that I thought would correctly swap the last columns between the two matrices, but it gives me an error. For my test cases, when swapping a 3x2 and a 3x2 matrix, the code works. But, when swapping a 3x3 and a 3x2 matrix it won't work, and outputs a 3x2 answer instead of a 3x3. Not quite sure what I'm doing wrong. Any help is appreciated.
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!