Azzera filtri
Azzera filtri

create "for" condition to multiply specific values ​​of a column

3 visualizzazioni (ultimi 30 giorni)
I have these values ​​in an attached matrix called "belem_gldas.mat"
I want to make the following condition: for values ​​less than 1 of all rows in column 6 perform the multiplication by "dia_28"
In short:
I want to multiply all values ​​<1 for all rows in column 6 by "day_28"
dia_28=2419200
for belem_gldas=belem_gldas(belem_gldas(:,6)<1,:)
belem_gldas(:,6)<1*dia_28
end

Risposta accettata

Image Analyst
Image Analyst il 29 Dic 2022
Try this:
% Get data.
s = load('belem_gldas.mat')
belem_gldas = s.belem_gldas
dia_28=2419200;
% Get mask = rows where column 6 is less than 1.
mask = belem_gldas(:, 6) < 1;
% For those rows only, multiply the values by dia_28.
belem_gldas(mask, 6) = belem_gldas(mask, 6) * dia_28

Più risposte (0)

Categorie

Scopri di più su Multidimensional Arrays in Help Center e File Exchange

Prodotti


Release

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by