How to substract in table
14 次查看(过去 30 天)
显示 更早的评论
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
回答(2 个)
Walter Roberson
2021-6-24
Provided that all variables are numeric:
array2table(T{:,:} - T{1,:}, 'variablenames', T.Properties.VariableNames)
2 个评论
Walter Roberson
2021-6-24
array2table(sum(T{:,:} - T{1,:},1), 'variablenames', T.Properties.VariableNames)
Mohammad Sami
2021-6-24
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);
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!