Extract all numbers from a matrix that also contains NaN into a single vector

9 views (last 30 days)
Hi there I have a large matrix that contains numbers (both positive and negative) and NaN. I need to find the median of this matirx to plot a line.
Doing the median on the whole matrix gives me a value followed by NaNs which I cannot plot as a line.
I have tried the following:
realidx = arrayfun(@isreal,a);
only_reals = a(realidx);
only_real_part = real(a);
but it just gives me lots of 1s. I need the actual values extracting.. I also need all the values to be in one vector other wise all the columns would be of diferent lengths.
Any help would be amazing!
Thanks

Accepted Answer

Stephan
Stephan on 12 Mar 2019
Edited: Stephan on 12 Mar 2019
A = [1 2 3; NaN -2 0; NaN 5 -8]
result = A(~isnan(A))
gives.
A =
1 2 3
NaN -2 0
NaN 5 -8
result =
1
2
-2
5
3
0
-8
Best regards
Stephan

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices 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!