load function not returning correct array dimension

So I want to save() a bunch of array in another file so i can acces it later using load(). When i want to use the array(12x18), i got error message, "error: reshape: can't reshape 1x1 array to 6x3 array". Below is an example of how my code is. How do properly store and access the matrix ? I use a lot of reshape in my code.
a = randi(12,12,18);
save('a.mat','a');
b = load('a.mat','a')
c = reshape(b(1,:),[6,3])

2 Kommentare

load puts your saved data in a structure, use b.a to access your data
a = randi(12,12,18);
save('a.mat','a');
b = load('a.mat','a')
b = struct with fields:
a: [12×18 double]
c = reshape(b.a(1,:),[6,3])
c = 6×3
6 11 10 8 10 11 9 4 2 11 10 3 8 6 8 3 7 12
Thank you very much sir. That solved my problem :)

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by