使用any()在MATLAB中删除3D矩阵中的零行

时间:2013-03-07 19:47:45

标签: matlab matrix row zero

以前我使用此行删除常规矩阵中的零行:

RV = RV(any(RV,2),:);

但我为3D矩阵做了以下操作。我仍想删除零ROWS:

RV = RV(any(RV,2),:,:);

但我收到一条警告,上面写着“指数超过矩阵维度”。我做错了什么?

1 个答案:

答案 0 :(得分:0)

这是你可以为三维数组做的事情:

x=squeeze(any(RV,2));
[row,dimension]=find(x==0); 

现在再次这是一个三维数组,你只能从ith维删除jth行。如果您想这样做,请将其保存到单元阵列或3个不同的2-D阵列中。