converting structure array to xls file

Dear all,
I have a huge structure array of patient datasets that looks like this:
(patient_name).(year_of_visit).(type_of_visit).(score)
I need to convert this structure array to excel or csv file in a matter I'd be able to use it in Excel, SPSS, etc for further analysis. However, I'm not able to export this easily. Any input is much appreciated!

2 个评论

I take it the goal would be to output the relevant structure member names, and the content of the score field, as rows ?
That's correct. Your script almost do the trick. Thanks

请先登录,再进行评论。

 采纳的回答

This is probably most easily done through recursion and basic file I/O
function dump_patient_record( fields_above_here, current_level, fid )
if ~isstruct(current_level)
fprintf(fid, '%s,', fields_above_here{:});
fprintf(fid, '%f\n', current_level ); %assuming it is a scalar for simplicity
else
thesefields = fieldnames(current_level);
for K = 1 : length(thesefields)
thisfield = thesefields{K};
dump_patient_record( [fields_above_here {thisfield}], current_level.(thisfield), fid );
end
end

更多回答(1 个)

Tom
Tom 2012-6-25
The struct2cell function is probably what you need, though you'll have to dig through a bit as it only goes to the first level of the structure

类别

在 帮助中心 和 File Exchange 中查找有关 Data Type Conversion 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by