Extract the column/ row numbers or adress

5 次查看(过去 30 天)
Hi,
I have 1 x 10000 matrix which got values of 0, 1 in it. Here, I would like to get the information on column numbers which got the value 1. Attached, here is th matrix. Please help me with this...
  3 个评论
dpb
dpb 2021-1-20
NB: Depending upon the next step(s), often one doesn't need to actually return the indices themselves but can simply use the logical addressing vector.
If so, may save a temporary variable plus the overhead of the find() operation itself.

请先登录,再进行评论。

采纳的回答

Adam Danz
Adam Danz 2021-1-20
> I would like to get the information on column numbers which got the value 1
For logical row vectors or numeric row vectors containing 1|0,
colNum = find(c);
If the row vector contains values other than 0|1 and you want to find the 1s, follow Omid Saeidi's advice,
colNum = find(c==1);
If you're planning on indexing, follow dpb's advice and use logical indexing
logidx = logical(c); % if c is numeric
% or
logidx = c==1; % if c contains values outside of 0|1
  3 个评论
Adam Danz
Adam Danz 2021-1-20
I would define the sequences within a variable and loop through each sequence.
seq = {55:65; 125:145; 201:225};
for j = 1:numel(seq)
for kk = seq{j}
% your code
end
end

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by