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

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?

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 6 Nov. 2013
Bearbeitet: Azzi Abdelmalek am 6 Nov. 2013

13 Stimmen

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 Kommentare

afrya
afrya am 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?
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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (5)

Shubham Kumar
Shubham Kumar am 5 Mai 2015

6 Stimmen

You can create a sum matrix over rows by typing sum(matrixName, 2). This will return an array containing sum over rows.

2 Kommentare

This is exactly the same answer that was already given and accepted 1 1/2 years ago.
James Tursa. You're comment is extremely invaluable.

Melden Sie sich an, um zu kommentieren.

Delladj Kamel
Delladj Kamel am 5 Mai 2015

3 Stimmen

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 am 8 Aug. 2021

1 Stimme

how to calculate sum of all rows in a matrix given using matlab commands
loukil sana
loukil sana am 9 Dez. 2015

0 Stimmen

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 am 26 Jun. 2017

0 Stimmen

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 Kommentare

Jan
Jan am 26 Jun. 2017
Bearbeitet: Jan am 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.
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).

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Linear Algebra finden Sie in Hilfe-Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by