struct2table命令出错

时间:2014-02-20 22:47:41

标签: matlab

运行程序时出现以下错误。

??? Undefined function or method 'struct2table' for input arguments of type 'struct'.
Error in ==> cellarray at 13  
T=struct2table(parameter,'AsArray',true);

该计划如下

a=10;
b=15;
parameter(a).alpha_star=0;
parameter(b).gamma_star=0;
x=5;
for j=1:b
    for i=1:a
    parameter(i).alpha_star=x+i;

    end
parameter(j).gamma_star = x^2+j;    
end  
T=struct2table(parameter,'AsArray',true);  
你能告诉我,我哪里错了?

1 个答案:

答案 0 :(得分:0)

我猜你有一个比R2013b更旧的matlab,因为没有这个功能(你可以通过which struct2table检查)。 您可以尝试使用struct2arrayreshape来处理它。

您也可以使用

alp=[]; 
gam =[];
for i=1:length(parameter)
    if ~isempty(parameter(i).alpha_star)
        alp(end+1)=(parameter(i).alpha_star);
    end
    if ~isempty(parameter(i).gamma_star)
        gam(end+1)=(parameter(i).gamma_star);
    end
end

将值提取为单独的数组和

fieldnames(parameter);

获取字段名称,这很脏,但如果仅用于演示......