我在计算机内存中保存了一个名为data.mat
的Matlab文件。该文件的结构为尺寸为13x1
的单元格。为了保存文件,我使用了命令save('data.mat', 'data')
.
现在,我想加载文件并对其进行转换。
这就是我目前正在做的事情
%Load data
load data
%Transform data
for n=1:13
data{n}(:,1)=rand(10,1); %replace first column
end
但是,我在 Matlab 脚本上收到一条警告消息: ">变量数据似乎在每次循环迭代时都会改变大小。考虑预先分配速度"。
简而言之,脚本无法识别我已加载单元格。
我该如何解决这个问题?这不是一条错误消息,Matlab 在运行代码时表现良好。我只想删除警告的东西。
您收到此警告是因为编辑器无法知道变量data
在从 MAT 文件加载之前将具有什么格式。由于未定义data
,因此它可能假定您从头开始制作并发出警告。如果您确定不会增加单元格阵列(即您只会修改现有单元格(,您可以通过将其添加为该行的第一条注释来禁止显示警告:
%#ok<SAGROW>
或者右键单击突出显示的单词data
并选择选项"抑制..在这一行",这将为您添加评论。
有关此内容的更多信息,请参阅文档。