How do I make an entire row in a table NaN?
Show older comments
I am trying to make all values in specific rows of a table NaN.
My table (T) contains 4 columns (time, x position, y position, pressure). I use the value of the pressure to determine when X and Y are 'on' or 'off'. I then want to set all values in rows where it is 'off' to NaN
% get on and off T data
isOn = find(T.Pressure >0);
isOff = find(T.Pressure==0);
I have tried the following:
T(isOff,:) = NaN;
as well as:
for i = 1:length(isOff)
T(i,:) = NaN
end
But both give the error: Right hand side of an assignment into a table must be another table or a cell array.
What is the issue? Is there a way to do this using vectorization without having an extensive loop?
Thank you for your help!
Accepted Answer
More Answers (1)
Voss
on 27 Oct 2022
T{isOff,:} = NaN; % use curly braces {}
Categories
Find more on NaNs 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!