Sum subarrays of a Matrix.
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Santos García Rosado
am 25 Feb. 2021
Bearbeitet: Matt J
am 26 Feb. 2021
Hi Mathworks community! Could someone give me a hand?
I'm having trouble trying to sum parts of the arrays of a matrix. Let's say I have the following matrix A of r rows and c columns (rxc).
A = [1,2,3,4,5,6,7,8,9; 10,11,12,13,14,15,16,17,18; 19,20,21,22,23,24,25,26,27]
And what I would like to to is to divide each array in n subarrays (n=3) and sum each of those subarrays. In this case, it would be the sum of every three positions. Getting an output suchs as:
out = [5,15,24; 33,42,51; 60,69,78]
Thank's for the help!
Santos
0 Kommentare
Akzeptierte Antwort
Fangjun Jiang
am 25 Feb. 2021
Bearbeitet: Fangjun Jiang
am 25 Feb. 2021
One-liner
transpose(reshape(sum(reshape(A',3,[])),3,[]))
Or
transpose(cell2mat(cellfun(@sum,mat2cell(A',[3,3,3],3),'unif',0)))
2 Kommentare
Fangjun Jiang
am 25 Feb. 2021
Can this task be done using accumarray()?? accumarray always makes my head spin!
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!