我有一个像这样的矩阵:
A= [5 3 2 1 5 6;
3 2 5 1 5 3]
我必须从第二行删除数字1,然后向左移动(数字5和3)。结果必须是:
A= [5 3 2 1 5 6;
3 2 5 5 3 X]
我把X,因为无论这个号码发生了什么。 A的大小无法修改。
答案 0 :(得分:2)
这是一个函数,它允许您指定要移除的向量中元素的位置,并在末尾用NaN
填充以保持长度相同
function newVec = removeElements(oldVec, elementsToRemove)
%//You should add some error checking here regarding the sizes of the matrices and making sure you're not out of bounds etc
newVec = [oldVec NaN(length(elementsToRemove))];
newVec(elementsToRemove) = [];
end
像这样使用
A= [5 3 2 1 5 6;
3 2 5 1 5 3];
A(2, :) = removeElements(A(2,:), 4);