Select an unknown variable from .Mat file

2 visualizzazioni (ultimi 30 giorni)
A .mat file has the variables
stateman
Name Size Bytes Class Attributes
val 1x1000 8000 double
Statefam
Name Size Bytes Class Attributes
statelab 1x16999 135992 double
ingrate 1x1 8 double
I want to automatically pick the variable with largest byte from a .mat file when selected by a user. Thank you guys
  2 Commenti
Jan
Jan il 5 Feb 2018
I have edited the question to make it readable. See http://www.mathworks.com/matlabcentral/answers/13205-tutorial-how-to-format-your-question-with-markup. Didn't you see, that the missing format impedes the readability?

Accedi per commentare.

Risposta accettata

Jan
Jan il 5 Feb 2018
matObj = matfile('YourFile.mat');
details = whos(matObj);
[maxBytes, index] = max([details.bytes]);
maxName = details(index).name;
Now explain what "pick the variable" means. Do you want to import this variable?
data = matObj.(maxName);
% Or
data = load('YourFile.mat', maxName)
  1 Commento
Paul Richardson
Paul Richardson il 26 Nov 2020
I had a similar question; this answer has helped a lot, so many thanks.

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