reshape and sum multi-dimensional matrix
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
ehsan
el 18 de Mayo de 2018
Hi, I have a 20-by-30-by-40 matrix. I would like to sum each two page of the third dimension. In the end, I need to have a 20-by-30-by-20 matrix.
I appreciate if you could help me.
0 comentarios
Respuesta aceptada
Más respuestas (2)
Sammit Jain
el 18 de Mayo de 2018
Hi, I think what you're trying to do can be accomplished without reshaping the multi-dimensional matrix.
% Initializing 20x30x40 matrix of random elements
X = rand(20,30,40);
% Splitting the matrix into 2 sets based on the alternating third dimension
% The two sets are of dimensions 20x30x20 each.
% Taking out odd elements of third dimension
setA = X(:,:,1:2:40);
% Taking out even elements of third dimension
setB = X(:,:,2:2:40)
% Adding the two sets A and B
result = setA+setB;
The key here is splitting the main matrix into two 'pages' that you actually want to add.
1 comentario
Ver también
Categorías
Más información sobre Resizing and Reshaping 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!