How to calculate the sum of each row in a matrix?

128 views (last 30 days)
Dear All,
I want to calculate the sum of each row in a large matrix.The matrix looks like:
y1 y2 y3 y4 y5
x2 2 4 4 6 7 Sumx2=??
x3 1 2 3 4 5 Sumx3=??
x4 1 2 3 4 5 etc
x5 1 2 4 5 6
My goal is to calculate for each x values the sum of the row. Do you have any idea to do that?

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 6 Nov 2013
Edited: Azzi Abdelmalek on 6 Nov 2013
A=[2 4 4 6 7
1 2 3 4 5
1 2 3 4 5
1 2 4 5 6]
out=sum(A,2)
  2 Comments
afrya
afrya on 6 Nov 2013
Ok thanks,so I have to extract the matrix A of my large matrix, because x and y are integer values.Do you know a way that enable to calculate directly the sum of each row, without extracting the matrix A?
Azzi Abdelmalek
Azzi Abdelmalek on 6 Nov 2013
Edited: Azzi Abdelmalek on 6 Nov 2013
for example, for row 1
s=sum(A(1,:))
For row n
n=3
s=sum(A(n,:))
You have to read about array
doc array

Sign in to comment.

More Answers (5)

Shubham Kumar
Shubham Kumar on 5 May 2015
You can create a sum matrix over rows by typing sum(matrixName, 2). This will return an array containing sum over rows.
  2 Comments
James Tursa
James Tursa on 5 May 2015
This is exactly the same answer that was already given and accepted 1 1/2 years ago.
Andrew Mccooey
Andrew Mccooey on 21 Feb 2021
James Tursa. You're comment is extremely invaluable.

Sign in to comment.


Delladj Kamel
Delladj Kamel on 5 May 2015
You can produce a sum vector over rows of matrix "A" by typing sum(A') where A' is the matrix transpose of matrix "A".

lurvik pokala
lurvik pokala on 8 Aug 2021
how to calculate sum of all rows in a matrix given using matlab commands

loukil sana
loukil sana on 9 Dec 2015
hi, i want to do some controle on the sum of each raw for example: y1 y2 y3 y4 y5 x2 2 4 4 6 7 Sumx2=1000 x3 1 2 3 4 5 Sumx3=1200 x4 1 2 3 4 5 Sumx4=1000 x5 1 2 4 5 6 Sumx5=1200
and i want to note that values given in the matrice are randomly genarating . thanks

Soumyabrata Bhattacharjee
Soumyabrata Bhattacharjee on 26 Jun 2017
I don't know if someone has already highlighted this, I didn't go through all the answers. But coming to your question, you can try this
sum (A')'
where A is the input matrix
  2 Comments
Jan
Jan on 26 Jun 2017
Edited: Jan on 26 Jun 2017
This works, but prefer sum(A, 2):
  • It saves the time for transposing
  • It calculates the wanted sum over the rows also if A is a coulmn matrix. Then the output must equal the input, but with sum(A')' a scalar is replied, because Matlab decides smartly to sum over the column.
Jaimie Ritchie
Jaimie Ritchie on 21 Sep 2022
Thank you Jan! That is very helpful. I was able to use this to just find the sum of each row with columns 2 through 4 by using sum(A(:,2:4),2).

Sign in to comment.

Categories

Find more on Linear Algebra in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!