我正在尝试访问结构中的多个字段,以将数据从datenum更改为datetime。结构由以下内容创建:
DATA=struct('Id',[],'Date',[],'Value',[]);
由于接收数据的风格,有多个DATA,每个DATA都有一个Value。所以一个足够的例子是
Data(1).Date=2;
Data(2).Date=3;
现在我想将条目更改为datetime,但保留数据结构。对于这个例子,我们可以说将日期定为。
Data(1).Date=4;
Data(2).Date=9;
该结构有大约50000个enries,arrayfun()
没有提供足够有效的解决方案。我无法找到一种方法来转换整个Data.Date广告数组deal()
在每个字段中写入所有50000个日期,并以其他方式收到错误。有人有解决方案来更改整个数组并将其写回数组的每个字段吗?
答案 0 :(得分:3)
您可以将所有值放入数组中,然后在计算结果后重新填充结构。
{{1}}
答案 1 :(得分:2)
使用一个小的绕行转换表单结构到数组,然后进行数学运算,然后从数组转换为单元格到逗号分隔列表到结构:
arr=[Data(:).Date];
arr=num2cell(arr.^2);
[Data(:).Date]=arr{:};