How do I get values of a certain parameter in a multi-dimensional matrix?
Show older comments
A is a variable with the size of 1000 x 500.
% Index of those that are less than 10000
Ind = A < 10000;
Why does the below give me a 500000 x 1 column data, instead of a 1000 x 500 matrix?
b = a(Ind);
What did I do wrong? How do I get the correct b with the size of 1000 x 500?
Accepted Answer
More Answers (1)
Matt J
on 30 Nov 2021
0 votes
b should be an Nx1 vector where N is the number of elements satisfying A<10000.
6 Comments
Leon
on 30 Nov 2021
Matt J
on 30 Nov 2021
I think you need to describe better why you expect b to be a 1000x500 matrix. What if there had been only 3 elements for which A<10000?
Leon
on 30 Nov 2021
A(A>=10000)=nan;
Leon
on 30 Nov 2021
You could also use standardizeMissing.
M = 9e26;
format shortg
A = [4 8 M 15 M M; 16 23 42 M M M]
B = standardizeMissing(A, M)
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!