convert struct field in cell array

3 Ansichten (letzte 30 Tage)
Doctor G
Doctor G am 19 Apr. 2016
Bearbeitet: James Tursa am 20 Apr. 2016
I used a json converter which created a 1x15 cell array (see below) that has a field called objectClass (which is a 1x1 struct with one field (objectCalss.objtype) (a number)
I would like to flatten that one field so that objecClass is not a struct, but the number itself.
A picture is worth a 1,000 words...

Antworten (1)

James Tursa
James Tursa am 19 Apr. 2016
Do you mean like this:
for k=1:numel(result.objList)
result.objList(k).objectClass = result.objList(k).objectClass.objtype;
end
  3 Kommentare
Doctor G
Doctor G am 20 Apr. 2016
(but I am a C, JavaScript, C#, Python programmer), so this is clear to me. What I hear is that there are map and array operations built into matlab, that might be faster than iteration. But thanks again, this is clear.
James Tursa
James Tursa am 20 Apr. 2016
Bearbeitet: James Tursa am 20 Apr. 2016
There may be some function or combination of functions that can do this, but I doubt you would get any significant speed advantages by using them. The reason is you are manipulating fields of structures, which are variables, not elemental values such as elements of a double array. So even if you could use canned MATLAB functions for this, there would probably be looping code of some sort in the background to accomplish the task much like the for loop above (as opposed to some C/C++ code that would give you a speed advantage like you could get by manipulating elements of a double array).

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Data Type Conversion finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by