MATLAB: How to remove NaN in rows and columns of excel data set in matlab

nan

Hi, I have the excel dataset of 50*48 matrix but it is having some NaN values also? I want to remove the NaN values from the matrix without loss of data.
Thank you in advance.

Best Answer

You can use isnan() to identify nan locations and then build a cell array with nulls there. If m is your matrix (untested code):
[rows, columns] = size(m);
nanLocations = isnan(m);
ca = cell(rows, columns); % Initialize cell array.
for row = 1 : rows
for col = 1 : columns
if ~nanLocations(row, col)
ca{row, col} = m(row, col); % Only fill cell if it's not nan.
end
end
end
xlswrite(filename, ca);