summations and selections of the columns of a matrix

1 次查看(过去 30 天)
I have a matrix of this type
10 15 37 16
6 4 3 5
15 66 85 96
17 89 15 82
58 66 78 100
I have to understand how to do two procedures:
1) calculate the sums of the subsequent column numbers, for example :
the first line remains the same 10 15 37 16
the second line must be 6+15+17+58 4+66+89+66 3+85+15+78 5+96+82+100
the third line must be 5+17+58 66+89+66 85+12+78 6+82+100
and so on ... can someone tell me how it can be done?
2) in the script then I have to consider the last one formed by as the first column
16
5
96
85
100
as the second column
37
3
85
15
78
and so on .. how do you select any column of the matrix you can use?
  2 个评论
Johnny Himbele
Johnny Himbele 2021-10-28
Hi Elisabetta,
A cumsum function can achieve what you're trying to do. For more information, please refer to this link.
For example,
A = magic(5);
B = [A(1,:); cumsum(A(2:end,:),'reverse')];
If you want to select any specific columns, please replace a colon to any column indices.
% First column
C = [A(1,1); cumsum(A(2:end,1),'reverse')];
% Second and third columns
D = [A(1,2:3); cumsum(A(2:end,2:3),'reverse')];
Johnny

请先登录,再进行评论。

采纳的回答

David Hill
David Hill 2021-10-28
newMatrix=[yourMatrix(1,:);flipud(cumsum(flipud(yourMatrix(2:end,:))))];
  1 个评论
ELISABETTA BILLOTTA
ELISABETTA BILLOTTA 2021-10-28
ok thanks ... I understand that is the answer to point 1 and it works .. thanks a lot .. and for point two?

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Language Fundamentals 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by