Dtype изменен при загрузке файла в Python с помощью np.load - PullRequest
0 голосов
/ 09 октября 2019

Когда я использую Python 3 для numpy.load файла, dtype будет изменен, а затем вызвал ошибку в последующем коде.

Первоначально это [('data_date', [('year', '<i4'), ('month', '<i4'), ('day', '<i4')]), ('', '|V4')] После загрузки становится [('data_date', [('year', '<i4'), ('month', '<i4'), ('day', '<i4')]), ('f1', '|V4')]

- обратите внимание, что последний dtype в списке был пустым полем, но каким-то образом, когда python3 загружает файл и делаетон ('', '|V4') до ('f1', '|V4') и заставляет мой код не распознавать форму и тип данных файла.

У меня было "исправлено" жестко закодировано для сохранения с astype(by redefining the dtype with ('', '|V4')).

Кто-нибудь знает, почему Python 3 изменит dtype, открыв его? Есть ли другой способ избежать этого вместо сохранения файла с astype().

Большое спасибо.

Когда я делаю

loaded = np.load('the_file.npz')
database = loaded['database']
database.dtype```

#The output will be [('data_date', [('year', '<i4'), ('month', '<i4'), ('day', '<i4')]), ('f1', '|V4')]

#When I use the file format viewer application(make no change to the file), the dtype is just 
#[('data_date', [('year', '<i4'), ('month', '<i4'), ('day', '<i4')]), ('', '|V4')]


Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...