小编Mik*_*ger的帖子

Matlab:查找每列矩阵的第一次出现的行指数(不使用循环)

对于由'0'和'1'组成的矩阵A的每一列,我想找到第一次出现'1'的列索引(如果存在).例如,如果A定义为:

 A=[0 0 0 0;
 0 0 0 1;
 0 0 0 0;
 0 0 0 1;
 1 0 0 0;
 0 1 0 1;
 1 1 0 0]
Run Code Online (Sandbox Code Playgroud)

那么结果将是:

b=[5 6 2]
Run Code Online (Sandbox Code Playgroud)

我正在寻找一个没有'for'或'while'循环的解决方案.

我想出了一个解决方案:

 [b,~]=find(cumsum(cumsum(A))==1)
Run Code Online (Sandbox Code Playgroud)

有没有更优雅的方式来做到这一点?

matlab matrix find last-occurrence indices

5
推荐指数
2
解决办法
7081
查看次数

标签 统计

find ×1

indices ×1

last-occurrence ×1

matlab ×1

matrix ×1