How to access a particular array from a structure of arrays saved in a .mat file without loading the entire mat file

11 visualizzazioni (ultimi 30 giorni)
Hi
I have a .mat file which contain a structure which in turn has many fields and large data arrays. Sample file shown below:
y_struct = struct('yval',[],'time',[]);
y_struct.yval = struct('tag',{'y1value','y2value','y3value'},'data',{[],[],[]}); % Defining structure to store the y array
% and its deviations
y_struct.time = t;
y_struct.yval(1).data = input;
y_struct.yval(2).data = y_struct.yval(1).data + 0.5;
Load command will save the entire mat file in memory. In my application, I want to access data fields with a particular tag(y_struct.yval(1).data). Is there a way to directly access this array element without having to load the entire .mat file? I read that using a matfile object we can access mat file elements but is it possible to access array index?

Risposta accettata

KSSV
KSSV il 5 Ott 2016
Modificato: Walter Roberson il 5 Ott 2016
  3 Commenti
Nadia A
Nadia A il 10 Ott 2016
Modificato: Nadia A il 10 Ott 2016
It says field cannot be accessed. The mat file contains 3 (1x4) structures. tag1,tag2,tag3(each of dimension 1x4). When I try to access data field of tag1, it shows error
'Cannot index into 'tag1' because MatFile objects only support '()' indexing'

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Workspace Variables and MAT-Files in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by