【问题标题】:preallocate structure matlab预分配结构matlab
【发布时间】:2012-08-10 09:10:51
【问题描述】:

我正在考虑创建一个像 Q.Q.Q.W(1,12).x1...Q.Q.Q.W(1,12).x40 这样的结构,所以我有 12 个 W 字段,每个字段有 40 对:内部字段值 (单元格、字符串、整数)。我想预先分配这个结构。在这种情况下,我已经有一个像这样但带有数据的现有结构,并且根据条件我修改这些数据并保存到我的新结构中,或者只是使用空的预分配结构更进一步。

所以我必须获得一个预先分配维度的结构,就像我的数据结构一样,但这个结构必须是空的。如果不输入所有这些 12 乘以 50 的名称等怎么办?

就像帮助中的 s = struct(obj),但不应包含 obj 的内容,而是为空。

如果你有任何想法请帮忙

【问题讨论】:

标签: matlab structure


【解决方案1】:

确实,它似乎不是如何存储数据的最佳选择——由此产生的结构不会是世界上最容易操作的东西。

尽管如此,如果您的客户/客户/任何人希望您返回与您获得的数据结构相同的数据结构,那么这是一个合法的用例。

所以,你可以做类似的事情

for ii = 1:40               
    Q.Q.Q.W(12).(['x' num2str(ii)]) = [];
end

创建初始结构。

我不太明白你最初想用什么来填充结构——你能澄清一下吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-31
    • 2015-05-16
    • 1970-01-01
    • 1970-01-01
    • 2011-12-17
    • 2016-03-14
    • 2018-12-08
    • 1970-01-01
    相关资源
    最近更新 更多