在Matlab中,如何从我需要的矩阵中删除特定的行?例如,如果我想从矩阵中删除包含特定值(如0或NaN)的所有行?
发布于 2013-02-11 20:07:54
假设你有A
A = [1 2 3;4 5 0; 7 8 9; 10 NaN 12]
A =
1 2 3
4 5 0
7 8 9
10 NaN 12然后,您可以按如下方式选择行:
any(isnan(A'))
ans =
0 0 0 1要删除这些NaN-containing行,您可以执行以下操作:
A(any(isnan(A')),:) = []
A =
1 2 3
4 5 0
7 8 9您可以选择0-containing rows by any(A' == 0)。如果希望所有元素都是0s或NaNs,那么可以使用all而不是any。
https://stackoverflow.com/questions/14811423
复制相似问题