scipy.io : элемент.элемент(0) против элемента[0]

#python #matlab #scipy

#python #matlab #scipy

Вопрос:

Я хотел бы знать разницу между:

 element.item(0)
  

и

 element[0]
  

после преобразования файла matlab в «словарную» структуру с использованием scipy.io

Спасибо.

Комментарии:

1. Что такое element ? Пожалуйста, предоставьте минимальный воспроизводимый пример.

2. Вы использовали io.loadmat для загрузки файла? Таким образом, результатом является словарь, содержащий, среди прочего, переменные, которые являются numpy массивами. В зависимости от сложности исходного MATLAB эти массивы могут быть вложенными уровнями массивов объектов dtype с отдельными элементами или формами, такими как (1,1) . item это один из способов извлечения элементов из таких массивов; так же как и индексирование.

Ответ №1:

Похоже element , что это numpy массив.

Тогда element.item(k) , согласно этой документации, это k-th элемент в плоской версии element массива.

While element[k] является k-th подмассивом element .

В случае, если ваш element массив одномерный, они оба означают одно и то же.

Если он многомерный (N-мерный), то они означают разные вещи, первый — это просто один элемент (число / скалярный) ( k-th элемент внутри версии с плоским массивом), второй — подмассив (N-1) измерений (по индексу k 0-th измерения).

Комментарии:

1. Большое вам спасибо! Это именно то, что я искал.