如何在MATLAB中删除某些行中包含零的矩阵中的所有列

时间:2019-04-09 02:03:06

标签: matlab matrix

我有一个大小为4x16的矩阵,我需要删除第一行值为零的所有列。例如:这是矩阵示例:

X = [1 0 0 0; 0 1 0 0; 0 0.4 0 0; 0 0 0 0.8; 0.5 0 0 0];

二维矩阵(X)如下:

      1   0   0   0
      0   1   0   0
      0  0.4  0   0
      0   0   0  0.8
     0.5  0   0   0

所以我需要的只是X = [1 0 0 0;0.5 0 0 0 ],因为这些列的第一行与零不同。

1 个答案:

答案 0 :(得分:3)

只排除行号:

X = X(X(:,1) ~= 0, :);

X(:,1) ~= 0是第一列的布尔向量,如果元素的值不为0,则为true。