Replace 32767 with NaN in entire table

12 views (last 30 days)
I have a timetable with some strange values(32767 (probably Inf)) in all columns of my table.
How can I replace all these with NaN's ?
I tried the following, but it didn't work:
% Method 1
Data(Data==32767)=NaN;
%Method 2
for j=1:size(Data,2)
Data(Data(:,j)==32676,j)=NaN;
end

Accepted Answer

ANKUR KUMAR
ANKUR KUMAR on 26 Jan 2022
Edited: ANKUR KUMAR on 26 Jan 2022
You can get the table in a matrix form using .Variables. Once you have a matrix, then you can use boolean to replace any numbers with nan. Here is an example of replacing 48.9 with nan.
load outdoors
tt=outdoors(1:5,:);
mat = tt.Variables;
mat(mat==48.9) = nan;
tt.Variables = mat
tt = 5×3 timetable
Time Humidity TemperatureF PressureHg ___________________ ________ ____________ __________ 2015-11-15 00:00:24 49 51.3 29.61 2015-11-15 01:30:24 NaN 51.5 29.61 2015-11-15 03:00:24 NaN 51.5 29.61 2015-11-15 04:30:24 48.8 51.5 29.61 2015-11-15 06:00:24 48.7 51.5 29.6
  3 Comments
Marcel345614
Marcel345614 on 27 Jan 2022
Thanks a lot! Now this was helpful ;-)

Sign in to comment.

More Answers (0)

Tags

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!