Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 如果值低于预定义阈值,则删除矩阵行_Matlab_Loops_Matrix - Fatal编程技术网

Matlab 如果值低于预定义阈值,则删除矩阵行

Matlab 如果值低于预定义阈值,则删除矩阵行,matlab,loops,matrix,Matlab,Loops,Matrix,我有一个从.txt文件读取的2列值矩阵。我现在尝试编写一个循环,它迭代矩阵中的每一行,并删除每一行,其中第二列中的值低于此阈值 这是我迄今为止尝试过的,但它似乎不像我预期的那样工作: for i = 1:size(full_matrix,2) if full_matrix(i,2) < min_value; full_matrix(i,:) = []; end end i=1时的:大小(完整矩阵,2) 如果满矩阵(i,2)

我有一个从.txt文件读取的2列值矩阵。我现在尝试编写一个循环,它迭代矩阵中的每一行,并删除每一行,其中第二列中的值低于此阈值

这是我迄今为止尝试过的,但它似乎不像我预期的那样工作:

for i = 1:size(full_matrix,2)
    if full_matrix(i,2) < min_value;
        full_matrix(i,:) = [];
    end
end
i=1时的
:大小(完整矩阵,2)
如果满矩阵(i,2)
有人能给我指出正确的方向吗


谢谢大家!

代码看起来不错,我不知道你到底想做什么。你能给我们举一些例子和预期的结果吗?上面的代码将删除第二列值低于设置阈值的矩阵行。但是,如果删除该列,您将丢失矩阵的整个第二列-我相信这不是您想要的。您不需要for循环:
full_矩阵(full_矩阵(:,2)谢谢你的帮助!第二条注释起作用了-我也不确定我的代码为什么不起作用…当我运行时,它会将变量I=2写入工作区,并从矩阵中删除最上面的两行。您的代码不起作用,因为
for
循环试图迭代
full_matrix
的所有行,但不幸的是在循环过程中,您删除了行,因此当for循环尝试读取不再存在的行时,出现了一个问题。您可以通过简单地记住要在循环中删除的行的索引来纠正它,并且只在循环中删除一次行。但最简洁的解决方案是使用@rinkert提供给您的向量化方法在上面的评论中。