【问题标题】:How to append data to an existing .mat file without loading the existing data from that mat file in MATLAB? [duplicate]如何在不从 MATLAB 中的 mat 文件加载现有数据的情况下将数据附加到现有的 .mat 文件? [复制]
【发布时间】:2013-12-28 02:23:45
【问题描述】:
我有一个非常大的数据块,大约 3GB。当我尝试加载它并将其保存在 mat 文件中时,我的笔记本电脑挂起,因为我只有 4GB 内存。现在我想如果我可以将我的原始数据分成更小的块并进行我需要做的任何处理并将其分步保存到 mat 文件中,它不会占用太多 RAM。
但是我找不到将新数据附加到现有 mat 文件中而不加载现有数据的方法(这将达不到目的)。
有什么想法吗?
【问题讨论】:
标签:
matlab
mat
large-data-volumes
large-data
【解决方案1】:
使用函数matfile:documentation
m = matfile(filename) 创建一个 MAT 文件对象 m,连接到
MAT 文件名为文件名。该对象允许您访问和更改
变量直接在 MAT 文件中,无需加载变量
进入记忆。
matfile 函数提供的部分加载和保存
比加载和保存命令需要更少的内存,后者总是
对整个变量进行操作。