sum all columns in a matrix

hi,
i want to sum all the columns of some matrix.
but without using a loop or the sum function.
for ex:
for the matrix [1 3 2; 4 4 8]
i will recive [5 7 10]

Réponses (2)

James Tursa
James Tursa le 8 Déc 2018

0 votes

Hint: Look at matrix multiplication.
As per my understanding you want to get the sum of the matrix coloumn wise so you can use the MATLAB sum function. All the MATLAB functions by default work on coloumn so you get the sum directly. You can refer to the code below. Hope it helps!
x = [1 3 2; 4 4 8]
x = 2×3
1 3 2 4 4 8
sum(x)
ans = 1×3
5 7 10

2 commentaires

DGM
DGM le 5 Juil 2022
In any practical scenario, using sum() would be perfectly sensible, but OP was working around contrived limitations -- no loops and no sum().
Thanks for correcting DGM,
You can refer to the below code as a solution.
x1 = [1 2 3; 4 5 6; 7 8 9];
all =(x1);
sumcol=0;
for i=1:length(all)
sumcol = 0;
for j = 1:length(all)
sumcol = sumcol + all(j,i);
end
fprintf("%d ",sumcol);
end
12 15 18

Connectez-vous pour commenter.

Catégories

Produits

Version

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by