Extract the column/ row numbers or adress

6 visualizzazioni (ultimi 30 giorni)
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 Commenti
Turbulence Analysis
Turbulence Analysis il 20 Gen 2021
Thanks, I works perfectly..
dpb
dpb il 20 Gen 2021
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.

Accedi per commentare.

Risposta accettata

Adam Danz
Adam Danz il 20 Gen 2021
> 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 Commenti
Adam Danz
Adam Danz il 20 Gen 2021
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

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by