deleting NaNs in a column without changing the size of the matrix
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Elaheh
am 20 Jan. 2019
Beantwortet: Image Analyst
am 20 Jan. 2019
Hi
I used this script to delete a few NaN s I have in column 5 of a file, However, the size of the matrix changed too. How should I change the edit the script to keep the size of the matrix the same?
Than you
dataEEG(isnan(dataEEG(:,5)),:) = [];
3 Kommentare
Rik
am 20 Jan. 2019
Even sparse matrices have a value at the positions that aren't filled. The only data type that can have empty elements is the cell:
C={1,[],3;4,5,6}
Stephen23
am 20 Jan. 2019
Bearbeitet: Stephen23
am 20 Jan. 2019
"The only data type that can have empty elements is the cell:"
Although that cell itself is not empty, only the array inside that cell. A cell array cannot have holes in it either: every cell is a scalar cell (regardless of what it contains).
Akzeptierte Antwort
Image Analyst
am 20 Jan. 2019
No you can't. If you delete the rows, the matrix will shrink. What you can do is to either set the nan elements to some known, constant value, or to fill in the nan regions with data from surrounding regions with something like regionfill() or a modified median filter. Would you like to do that? With regionfill() there is no max region size to fill in, but for a modified median filter you'd have to know the largest size of nan region in advance, which you can find.
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu NaNs finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!