我有一个大 (4GB+) 数据文件要访问。它包含多个不同信号 { a , b , c } 的样本i ,如下所示:
a_1 b_1 c_1 a_2 b_2 c_2 .... a_n b_n c_n
我想使用memmapfile来检索a流。因为我知道信号的数量和样本的数量,所以我尝试了:
m = memmapfile('data.dat','Format',{'int16',[nSignals 1],'sid'},'repeat',nSamples);
但这会返回无用的m字段
Data: nSamples x 1 struct array with fields:
sid
当然,以下工作正常,但速度很慢:
m = memmapfile('data.dat','Format','int16');
a = m.Data(1:nSignals:end);
如何在无需访问完整数据矩阵的情况下恢复a ?