MATLAB — Предупреждение: переменная «vol» не может быть сохранена в MAT-файле, версия которого старше 7.3?

У меня есть массив ячеек 800x6 vol, чьи столбцы с 1-го по 5-й являются двойными, а 6-й столбец представляет собой 200x200x200 трехмерную двойную матрицу. Я пытаюсь сохранить его в переменной, точнее в файле .mat.

>> save('./vol.mat', 'vol');
Warning: Variable 'vol' cannot be saved to a MAT-file whose version is older than 7.3.
To save this variable, use the -v7.3 switch.
Skipping... 

Почему это так? Как мне это исправить?

P.S.: Мне не очень хочется сохранять этот массив ячеек в виде текстового файла, так как это как бы «разрушает» структуру.


person Sibbs Gambling    schedule 18.10.2014    source источник


Ответы (1)


Я думаю, это связано с типом данных, который вы используете. Просто попробуйте то, что предлагает сообщение об ошибке:

save('./vol.mat', 'vol', '-v7.3')

Версия 7.3 формата файла .mat на самом деле новее, чем версия по умолчанию ('-v6'). У него есть недостаток, заключающийся в том, что ему не хватает обратной совместимости с очень старыми версиями Matlab, говорят, что он доступен только в 64-битных системах и называется solw. Кроме того, я не вижу причин не использовать '-v7.3'.

Кстати, я думаю, что вы можете удалить './' и .mat, так как это значения по умолчанию, так что

save('vol', 'vol', '-v7.3')

тоже должно работать (у меня так в похожей ситуации).

person wsj    schedule 29.10.2014