How to save a matrix from an object with unknow name?

1 Ansicht (letzte 30 Tage)
Juan Sepúlveda
Juan Sepúlveda am 31 Okt. 2020
Kommentiert: Juan Sepúlveda am 31 Okt. 2020
I have a file with around 50 variables, each with different names, so I have their names contained in a cell array called filtered_vars.
Then in order to load them I was using
for i=1:1%size(filtered_vars,1)
temp=load('merged_t7_original',filtered_vars{i})
end
temp =
struct with fields:
N_force_wind_to_wave_Nmin: [1444202×672×2 single]
Now my problem is that the variable temp corresponds to a structure object with the name of the variable which was loaded, and then I don't know how to read it in order to save it into a matrix.
  2 Kommentare
Juan Sepúlveda
Juan Sepúlveda am 31 Okt. 2020
Hi Adam, Thank you for your answer, I'm sorry about the lack of information, the problem is that I don't have a clue what is on the matrices, they are numbers, but different types in each of the matrices, basically I need to take the column "j" in each of them, complementing it with the following answer given by drummer, I'm able to fix my problem, the magic command was "cell2mat(struct2cell(temp))" and the code will look like this:
load('merged_t7_original','t7_info')
j=min(find(contains(t7_info.N.Unique,'B_60AQ')==1))
full_vars=who('-file','merged_t7_original');
filtered_vars=full_vars(contains(full_vars,'Nmin'));
for i=1:size(filtered_vars,1)
temp=load('merged_t7_original',filtered_vars{i});
temp=cell2mat(struct2cell(temp));
data_{i}=temp(:,j,1);
end

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

drummer
drummer am 31 Okt. 2020
Try
yourMatrix = cell2mat(struct2cell(YourStructure));
Cheers
  1 Kommentar
Juan Sepúlveda
Juan Sepúlveda am 31 Okt. 2020
It was exactly what I needed, thank you very much drummer!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by