Scipy loadmat загружает только целые числа?
Вопрос
Кажется, я могу загрузить все только как тип uint8, только с помощью следующих двух строк:
Импорт scipy.io x1 = scipy.io.loadmat ('one.mat')
все числа двойной точности преобразуются.Я считаю, что создатели Scipy знают о том, что числа с плавающей запятой гораздо более распространены ...
И что же мне делать?Спасибо!
Решение
Матфайл какого уровня вы пытаетесь прочитать?В соответствии с документы,
V4 (уровень 1.0), V6 и V7 до 7.2 поддерживаются Matfiles.
Вам понадобится библиотека Python HDF5 для чтения файлов MATLAB 7.3 Format Mat.Поскольку Scipy не предоставляет его, мы не реализуем здесь интерфейс HDF5 / 7.3.
Для поддерживаемых уровней переменные должны быть перезагружены с использованием того dtype, с которым они были сохранены;если вы предпочитаете загружать их, как это делает Matlab, добавьте mat_dtype=True
в конце параметров, с которыми вы вызываете loadmat
.