我有一个遵循以下模式的matlab结构:
S.field1.data1
...
.field1.dataN
...
.fieldM.data1
...
.fieldM.dataN
Run Code Online (Sandbox Code Playgroud)
我想data3同时从所有字段为一个数据字段(例如)分配值.这在语义上类似于:
S.*.data3 = value
Run Code Online (Sandbox Code Playgroud)
通配符"*"表示(field1,...,fieldM)结构中的所有字段.这是否可以在没有matlab循环的情况下完成?
在简单的情况下,您可以通过使用将结构转换为元胞数组来实现struct2cell()。由于您有嵌套结构,我认为这在这里不起作用。
另一方面,您的数据结构是否有任何原因?您的描述给人的印象是简单的 MxN 数组或单元数组更合适。