adding a value to all values in a table
Afficher commentaires plus anciens
So I have a 19880x1 table and I want to take the original values of the table, add 300 to those values, and create a new table of the new values. I've looked into varfun but I can't find a way to define func to add 300 without matlab yelling at me for this error: Operator '+' is not supported for operands of type 'table'.
3 commentaires
Walter Roberson
le 11 Avr 2020
Are all of the variables the same datatype, and in particular the same numeric datatype ?
Aaron Dubiansky
le 11 Avr 2020
Aaron Dubiansky
le 11 Avr 2020
Réponses (2)
dpb
le 11 Avr 2020
You address the variables in a table with the dot notation --
t.Var1=t.Var1+300; % store in place
t.Var2=t.Var1+300; % make new variable in existing table
u.Var1=t.Var1+300; % make a new table
Use whatever is your table variable in place of t and what is the variable name in the table for 'Var1' -- that's the default if don't provide any.
Walter Roberson
le 11 Avr 2020
T = array2table(table2array(T)+300, 'variablenames', T.Properties.Variablenames);
Or
T{:, :} = T{:, :} + 300;
Catégories
En savoir plus sur Structures dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!