I have a matrix W of 361*285.I want to create a matrix such that each column(1*285) of the matrix is reshaped into a matrix of (19*19)(read as atom)such that the atoms are concatenated into a 19*15 matrix
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/167130/image.png)
0 Kommentare
Akzeptierte Antwort
KL
am 11 Sep. 2017
A = rand(361,285);
B = reshape(A,19,19,19,15);
3 Kommentare
KL
am 12 Sep. 2017
Bearbeitet: KL
am 12 Sep. 2017
You could index B depending on your needs. For example,
>> B(:,:,1,1)
would be 19x19 matrix (this is your atom I guess). There are 19x15 such atoms (from B(:,:,1,1) to B(:,:,19,15)).
Next, I don't understand what you mean by multiply 20x50 matrix to B? As I explained before, you should treat ND-matrix as a matrix of matrices.
Weitere Antworten (0)
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!