任何人都可以告诉我是否可以在MATLAB中为“网络”结构添加新字段?
我试过这个:
net = setfield(net,'tr',tr);
但是我收到了这个错误:
引用不存在的字段'tr'。
答案 0 :(得分:2)
net
不是常规结构,而是类的实例。
您不能只是向对象添加任意字段。
>> net = feedforwardnet(4);
>> isobject(net)
ans =
1
>> class(net)
ans =
network
查看对象时,有一个userdata
属性,为用户提供了一个向网络对象添加自定义信息的位置。
>> net.userdata.tr = rand(10);
>> net.userdata
ans =
note: 'Put your custom network information here.'
tr: [10x10 double]
答案 1 :(得分:0)
正如Amro所指出的那样,net
是一个对象,而不是一个结构,因此你不能为其添加一个字段。
您可以做的是创建自己的结构,其中net
为其中的一个字段
>> myNet.net = net;
>> myNet.tr = tr;