How to find column and row indexes of items that are +-inf or Nan ?
Show older comments
Hello
I have a very large matrix X where some elements can be -+inf or Nan. Currently I loop over all elements, check each one and handle it. It is taking forever. How can I easily find the [row,col] coordinates of such items ? I tried fiddling with isfinite(X) but in vain
Thanks much for any help
Accepted Answer
More Answers (2)
Jos (10584)
on 18 Jul 2013
Edited: Jan
on 18 Jul 2013
Using ISFINITE is fine. You just have to negate the outcome
Here is a small example, showing all the steps:
M = [1 Inf 3 ; 11 12 NaN]
tf = isfinite(M)
tf = ~tf
[ri,ci] = find(tf)
which you can combine into a single line if you understand each step
[ri,ci] = find(~isfinite(M))
2 Comments
Jan
on 18 Jul 2013
Fixed typo: "INFINITE" => "ISFINITE".
Jos (10584)
on 18 Jul 2013
thanks Jan
rui gao
on 25 Nov 2018
0 votes
Hi. If I need omit these elements (inf) to calculate the variance, how to achieve it?
Categories
Find more on Dates and Time 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!