matlab找出一行中大于某值的最后一个数的位置,有一个1000*288的矩阵 我想找出每行中大于200的最后一个数,并且返回其列数,求指导。
index=cell2mat(arrayfun(@(n) find(B(n,:)~=0,1,'last'),1:size(B,1),'uniformoutput',0));
B可以替代成logical
代码如下,将a替换成你的矩阵即可,每行大于200的最后一个数的列数放在flag数组中:
a=round(rand(100,288)*250); %生成一个100*288的矩阵,值为0-250的随机数
flag=[];
k=1;
for i=1:100
for j=1:288
if(a(i,j)>200)
flag(i)=j %把每行最后一个大于200的数的列数存在flag数组中
end
end
end