matlab:删除给定索引的矩阵行

时间:2017-09-10 14:01:02

标签: matlab matrix

我有一个大矩阵A,我想删除它们的索引在另一个向量中的一些行V.该向量是未排序的,所以下面的代码不起作用

for i=1:length(V)
     A(V(i))=[]
end

问题是当例如第2行被删除时,接下来我要删除第4行,它将删除第5行,导致第5行的索引现在是4.我认为可以排序v降序和删除像上面一样,但排序是耗时的。还有其他人可以做这个任务吗?

1 个答案:

答案 0 :(得分:1)

您只需将整个索引向量传递给删除。

MATLAB支持非常强大的索引功能,学习它们可以简化编写代码并使它们不易出错。

示例代码

% Delete all rows with row indices as in V
A(V, :) = []