Insert NaN into specific values

3 views (last 30 days)
I use this code to insert all the lines in column 4 the numbers equal to 0 equal to NaN, but nothing happens.
That is, I want to insert NaN in all numbers equal to 0 of all rows in column 4.
Does anyone have an idea?
s=load('spi_dca.mat');
spi_dca = s.spi_dca;
mask=spi_dca(:,4)==0;
spi_dca(mask,4)=spi_dca(mask,4)==NaN;

Accepted Answer

Arif Hoq
Arif Hoq on 7 Jan 2023
try this:
s=load('spi_dca.mat');
spi_dca = s.spi_dca;
col4=spi_dca(:,4);
col4(col4==0)=NaN;
output=[spi_dca(:,[1 2 3]),col4];

More Answers (1)

Voss
Voss on 7 Jan 2023
s=load('spi_dca.mat');
spi_dca = s.spi_dca;
mask=spi_dca(:,4)==0;
spi_dca(mask,4)=NaN;

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!