필터 지우기
필터 지우기

How do I make an entire row in a table NaN?

조회 수: 43 (최근 30일)
FsC
FsC 2022년 10월 27일
댓글: FsC 2022년 10월 27일
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!

채택된 답변

David Hill
David Hill 2022년 10월 27일
T(isOff,:) = {NaN};%does this work?

추가 답변 (1개)

Voss
Voss 2022년 10월 27일
T{isOff,:} = NaN; % use curly braces {}

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

제품


릴리스

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by