How to find the first value coordinate(the minimum non-zero x coordinate) in each row?

1 次查看(过去 30 天)
How to find the first value coordinate(the minimum non-zero x coordinate) in each row?
and what if each row value coordinate gap were to big how to smooth it ,connect each row to a smooth line? thanks
fclose all; close all; clear all; clf; clc;
A=[0,1,1;0,1,0;1,0,0];
[row,column]=find(A==min(min(1)));

采纳的回答

Ameer Hamza
Ameer Hamza 2020-5-19
编辑:Ameer Hamza 2020-5-19
If matrix just contains 0 and 1
[~,idx] = max(A, [], 2)
Result
>> idx
idx =
2
2
1
For a general case
[~,idx] = max(A~=0, [], 2)
  3 个评论
Willis
Willis 2022-8-28
Hello?
What if the matrix (size of 207 x 7) contain not just 0 or 1 but other values?
I need to find the minimum values (not the indices) of each row except zero.
Could you help me for this?
Thank you!

请先登录,再进行评论。

更多回答(1 个)

darova
darova 2020-5-19
Try this
a = zeros(size(A,1),1);
for i = 1:length(a)
a(i) = find(A(i,:),1,'first')
end

类别

Help CenterFile Exchange 中查找有关 Scatter Plots 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by