Поиск по loadmat
должен дать много SO вопросов, которые помогут вам разобрать этот результат. loadmat
должен переводить объекты MATLAB в приближения Python / numpy.
data = io.loadmat(filename)
должен создать словарь с несколькими клавишами обложки и различными ключами данных. list(data.keys())
чтобы идентифицировать их.
x = data['x']
должно соответствовать переменной x
в рабочем пространстве MATLAB. Это может быть массив 2d порядка F, соответствующий матрице MATLAB.
Это может быть (n, m) массив dtype объекта, соответствующий ячейке MATLAB.
Это может быть структурированный массив, в котором имена полей соответствуют атрибутам MATLAB struct
.
В вашем случае похоже, что у вас есть массив dtype объекта 0d. Форма имеет вид ()
, пустой кортеж (1d имеет (n, m) форму, 2d имеет (n, m) форму и т. Д.). Вы можете извлечь элемент из массива () с помощью:
y[()]
y.item()
[()]
выглядит странно, но это логично. Для 1d массива y[1]
можно записать как y[(1,)]
. Для 2d y[1,2]
и y[(1,2)]
одинаковы. Индексный кортеж должен соответствовать количеству измерений. Следовательно, ()
может индексировать массив фигур ().