【发布时间】:2012-02-07 22:12:21
【问题描述】:
假设有一个使用以下结构值初始化的元胞数组。
% Phone book
phone_record{1} = struct('name', 'Bob', 'phone', '1233323');
phone_record{2} = struct('name', 'Mike', 'phone', '3245524');
% How to make such or similar one-liner work?
% phonebook(:) = phone_record{:}
% Expected:
% phonebook(1).name = 'Bob';
% phonebook(1).phone= '1233323';
% phonebook(2).name = 'Mike';
% phonebook(2).phone = '3245524';
确实可以使用 cell2struct 或 for 循环索引来完成此任务吗? 可以使用 deal 或类似的吗?
注意:如果您不知道解决方案,请不要使用“最佳实践”提示或类似的“挥手”。
【问题讨论】:
-
请注意,数组到数组的非循环分配可以很好地工作,就像这里stackoverflow.com/questions/8372619/…
-
告诉试图帮助您的人“请不要使用“最佳实践”暗示或类似的“挥手”可能是一种糟糕的形式。屈尊俯就很少被认为是人们从一天中抽出时间来帮助你的动机。
-
如果这看起来很粗鲁,我深表歉意,但这是一个技术问题,我得到的答案非常中肯!不幸的是,社区中有些成员喜欢制作不必要的 cmets ;-) 或诸如“哇,如果我是你,我不会那样做……”,“考虑使用 use oop”和类似的无关废话。我有一个技术问题。我的观点是,如果您不知道答案,请考虑限制自己只说一些话,并腾出其他用户阅读此知识库以寻找解决方案的时间。
-
提示:Matlab2014 提供了一种新的有前途的数据类型,称为 table mathworks.ch/ch/help/matlab/ref/table.html 有点像 R 的数据框和 python pandas 的方向。
标签: matlab