Saving struct to excel
147 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Deepa Maheshvare
il 19 Mag 2020
Commentato: Geoff Hayes
il 20 Mag 2020
I've a struct in the following form
Astruct =
struct with fields:
data1: [5001×16 double]
data2: [5001×16 double]
I'd like to save this to an excel with the data corresponding to each fieldname in separate sheets of the same excel file. The sheets names have to be slightly modified
i.e derived from fieldnames : data1_matlab, data2_matlab.
Any suggestions on how to do this will be really helpful
0 Commenti
Risposta accettata
Geoff Hayes
il 19 Mag 2020
Deepa - you can use fieldnames to return a cell array of the field names for your structure. You can then iterate over each name in this array to extract the data and write it to an Excel worksheet. Perhaps something like the following will work
excelFilename = 'someFile.xlsx';
structFieldnames = fieldnames(myStruct); % <--- where myStruct is your struct of data
for k = 1:length(structFieldnames)
fieldname = structFieldnames{k};
writematrix(myStruct.(fieldname), excelFilename, 'Sheet', sprintf('%s_matlab', fieldname));
end
2 Commenti
Geoff Hayes
il 20 Mag 2020
From writematrix name-value pair arguments, take a look at the Range property...you should be able to use that to write your header and then write your data.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Spreadsheets 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!