Borrar filtros
Borrar filtros

Question about summations from excel (backwards sum)

1 visualización (últimos 30 días)
Omar
Omar el 3 de Feb. de 2014
Respondida: Azzi Abdelmalek el 3 de Feb. de 2014
Hello, I have an imported excel file. Say I have 2, 1x20 Matrix (set as A and B respectively). How can I make an upside down sum between my matrices? Instead of going from i=0 to i=20 , I want to go from i=20 to i=0. An easy fix could be re-arranging the excel files but I wanna know if theres a way around with matlab.

Respuestas (3)

Roger Stafford
Roger Stafford el 3 de Feb. de 2014
Editada: Roger Stafford el 3 de Feb. de 2014
s = sum(fliplr(A)+fliplr(B));
Note: Whatever order 'sum' would have taken with A+B will be reversed.

Wayne King
Wayne King el 3 de Feb. de 2014
Editada: Wayne King el 3 de Feb. de 2014
There are a couple issues here. A sum that goes from 0 to 20 has 21 elements not 20 as you indicate. Further, summation is commutative so why does it matter what order you sum in?
A = randn(2,20);
sum(A,2)
B = fliplr(A); % reverse the elements in the rows of A
sum(B,2)
What have I misunderstood?
fliplr() reverse the rows of A (reverses each row of A)
  1 comentario
Omar
Omar el 3 de Feb. de 2014
Small mistake on my part for the 20 terms. Im aware that its commutative but my true task is to find the summation of the average of the lowest 2 terms of my matrix * the sum of the upper 2 terms of my other matrix and so on.
F=fliplr(A);
S=sum(((F(1:20)+F(2:20))/2).*(B(1:20)+B(2:20)))
Will this do?

Iniciar sesión para comentar.


Azzi Abdelmalek
Azzi Abdelmalek el 3 de Feb. de 2014
Your question is not clear, maybe you want
A=[ 1 2 3 4]
B=[10 20 30 40]
out=cumsum(fliplr(A+B))

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by