How to use logical indexing for a column of 0 and 1
34 views (last 30 days)
Show older comments
iceskating911
on 28 Sep 2021
Edited: iceskating911
on 29 Sep 2021
Hello! I am stil learning the basics of matlab and am having trouble with logical indexing. Each excel sheet has the same number of columns yet vary by number of rows. I want to take column "data(:,end-6)" which has a column of 0 and 1 and take all the rows that have the number 1 and create a new array and do more math calculations, using only the rows with a number 1 in that column. Any help would be appreciated. Thank you.
0 Comments
Accepted Answer
Cris LaPierre
on 28 Sep 2021
Edited: Cris LaPierre
on 28 Sep 2021
A simple example:
x = (1:10)';
% extract rows where x>5
ind = x>5
x(ind)
% or just simply
x(x>5)
3 Comments
Cris LaPierre
on 28 Sep 2021
ind returns a logical for every element, indicating whether it meets the criteria or not. When used as an index, only true values are extracted. The challenge perhaps with your data set is that the extracted data is also 1, so it may be hard to discern between the logical array and the actual values.
Also, if your values are exactly 1, you can use ind = D==1;
More Answers (0)
See Also
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!