Matlab:从列表构造结构

时间:2012-02-21 14:22:55

标签: matlab

例如,我有:

A = ['apple','banana','strawberry','orange']
B = ['2','1','1','4']

我想:

struct_foo = 
     apple: 2
    banana: 1
strawberry: 1
    orange: 4

换句话说,我想要一个结构,其字段是A中的元素,这些字段的值是B中的元素。

我可以使用for循环轻松地完成此操作...,但有更简单的方法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用命令cell2struct。在定义A和B时请注意大括号。另外,如果值应为数字,则可能需要删除B中数字周围的引号。

A = {'apple','banana','strawberry','orange'}
B = {'2','1','1','4'}
out = cell2struct(B',A)

out = 

         apple: '2'
        banana: '1'
    strawberry: '1'
        orange: '4'