Borrar filtros
Borrar filtros

converting structure array to xls file

1 visualización (últimos 30 días)
Arman
Arman el 25 de Jun. de 2012
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 comentarios
Walter Roberson
Walter Roberson el 25 de Jun. de 2012
I take it the goal would be to output the relevant structure member names, and the content of the score field, as rows ?
Arman
Arman el 26 de Jun. de 2012
That's correct. Your script almost do the trick. Thanks

Iniciar sesión para comentar.

Respuesta aceptada

Walter Roberson
Walter Roberson el 25 de Jun. de 2012
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

Más respuestas (1)

Tom
Tom el 25 de Jun. de 2012
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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by