Effacer les filtres
Effacer les filtres

How to substract in table

33 vues (au cours des 30 derniers jours)
Dion Theunissen
Dion Theunissen le 24 Juin 2021
Commenté : Walter Roberson le 24 Juin 2021
Hi,
How can I substract the first value of all columns from the other rows in a table?
So I have a table like this:
1230764 205775 182354 208200 226372 225378 204289 181576
1230764 205775 182354 208200 226372 225378 204289 181576
1230764 205775 182354 208200 226372 225378 204289 181576
1230766 205775 182354 208200 226372 225378 204289 181576
1230830 205775 182354 208200 226372 225378 204289 181576
1230915 205775 182354 208200 226372 225378 204289 181576
1231113 205780 182357 208205 226375 225380 204291 181581
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
1242631 207147 183648 209735 227913 226996 205878 183094
And need to substract 1230764 from the other values of that column and so on for the other columns.
Thanks, Dion
  1 commentaire
Dion Theunissen
Dion Theunissen le 24 Juin 2021
After I substract al those value, I want to sum all the rows so i get 1 column of all the values

Connectez-vous pour commenter.

Réponses (2)

Walter Roberson
Walter Roberson le 24 Juin 2021
Provided that all variables are numeric:
array2table(T{:,:} - T{1,:}, 'variablenames', T.Properties.VariableNames)
  2 commentaires
Walter Roberson
Walter Roberson le 24 Juin 2021
array2table(sum(T{:,:} - T{1,:},1), 'variablenames', T.Properties.VariableNames)
Walter Roberson
Walter Roberson le 24 Juin 2021
To sum along the rows, change the ,1 to ,2

Connectez-vous pour commenter.


Mohammad Sami
Mohammad Sami le 24 Juin 2021
You can use varfun to subtract the first value in the column from the rest of the values.
out = varfun(@(x)x-[0;repelem(x(1),length(x)-1,1)],mytable);
  1 commentaire
Dion Theunissen
Dion Theunissen le 24 Juin 2021
Can I also sum all the values per row on this way?

Connectez-vous pour commenter.

Produits


Version

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by