我使用Octave生成并保存了大量数据文件,现在我需要在MATLAB中打开它们作为分析它们的一部分。 MATLAB吐出这个错误。
Error using load
Unable to read MAT-file
[file path]/PhPar_40.mat: not a binary MAT-file.
Try LOAD -ASCII to read as text.
尝试加载-ASCII的建议然后给出了这个错误。
Error using load
Number of columns on line 2 of ASCII file
[filepath]/PhPar_40.mat must be the same as previous lines.
我(现在)明白Octave能够以MATLAB可读格式保存,但重新创建这些数据文件需要花费大量时间,而且实际上不是一种选择。有没有办法让MATLAB读取这些文件?
答案 0 :(得分:1)
MATLAB无法打开这些文件,因为这些文件无法正确保存。尝试按照以下命令将它们保存在八度音程中:
save -mat7-binary '[filepath]/PhPar_40.mat' 'm'
如果您有大量文件,可以将所有文件放在文件夹中,然后运行迭代器来读取所有加载并自动以正确的格式保存。这个迭代器看起来像:
file = dir('[filepath_read]/*.mat');
index = 1;
while (index==length(file)+1)
m = load('file(index).name')
save -mat7-binary strcat("[filepath_write]/", file(index).name, ".mat") 'm';
index = index+1;
pause(1);
endwhile
将所有文件转换为正确格式后,在MATLAB中加载它们。我希望它能解决你的问题