MATLAB从向量数组中的结构中提取字段

MATLAB从向量数组中的结构中提取字段,matlab,struct,Matlab,Struct,我遇到了以下问题:我得到了一个结构数组,并希望从向量中的结构中提取一个字段 结构有5个字段,其中一个称为“名称”。如何在向量中获取这些信息?您可以利用: 其中yourname字段如果name字段包含字符/字符串值,则数组将是一个单元格数组;如果name字段仅包含整数,则数组将是一个常规值数组。您可以使用: 其中,yourname字段如果name字段包含字符/字符串值,则数组将是一个单元格数组;如果name字段仅包含整数,则数组将是一个常规值数组。dfri的答案有效,但需要MATLAB映射工具箱。

我遇到了以下问题:我得到了一个结构数组,并希望从向量中的结构中提取一个字段

结构有5个字段,其中一个称为“名称”。如何在向量中获取这些信息?

您可以利用:

其中
yourname字段如果
name
字段包含字符/字符串值,则数组将是一个单元格数组;如果
name
字段仅包含整数,则数组将是一个常规值数组。

您可以使用:


其中,
yourname字段如果
name
字段包含字符/字符串值,则数组将是一个单元格数组;如果
name
字段仅包含整数,则数组将是一个常规值数组。

dfri的答案有效,但需要MATLAB映射工具箱。你可以用
{yourStruct.name}
将它们作为单元格数组获取,或
[yourStruct.name]
将它们作为数组获取:

>> A(1).name='a'; 
>> A(2).name='b';
>> A(3).name='c';
>> {A.name}
ans = 
    'a'    'b'    'c'
或者


dfri的答案可行,但需要MATLAB映射工具箱。你可以用
{yourStruct.name}
将它们作为单元格数组获取,或
[yourStruct.name]
将它们作为数组获取:

>> A(1).name='a'; 
>> A(2).name='b';
>> A(3).name='c';
>> {A.name}
ans = 
    'a'    'b'    'c'
或者


[解决方案不需要映射工具箱]()[解决方案不需要映射工具箱]()
>> A(1).num=10;
>> A(2).num=5;
>> A(3).num=25;
>> [A.num]
ans =
    10     5    25