Я загружаю файл .npy в Python 3.7.Вывод выглядит так:
>>>import numpy as np
>>>dt = np.load('trajectories.npy')
>>>dt
array({'trajectories': array([[[729.78449821, 391.1702509],
[912.41666667, 315.5 ],
[832.0577381 , 325.83452381]],
...,
[[852.92 , 174.16253968],
[923.36053131, 347.92694497],
[878.89942529, 323.26652299]]]), video_path: 'myPath', frames_per_second: 28}, dtype = object)
Учитывая, что я новичок в numpy ndarrays, объект dt выглядит для меня словарём.Однако, когда я пытаюсь индексировать «траектории», я получаю сообщение об ошибке:
>>>>dt['trajectories']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: only integers, slices (`:`), ellipsis (`...`), numpy.newaxis (`None`) and integer or boolean arrays are valid indices
>>>>dt.get('trajectories')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'numpy.ndarray' object has no attribute 'get'
Когда я рассматриваю его как массив:
>>>dt[0]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: too many indices for array
Когда я пытаюсь преобразовать массив в кортежМне сказали, что массив 0-й.
Что происходит?