Чтение большого массива с NumPy дает нули - PullRequest
0 голосов
/ 27 октября 2019

У меня большой двоичный файл (~ 4 ГБ), написанный в 4-байтовых числах. Я пытаюсь прочитать этот файл, используя numpy fromfile, следующим образом.

data = np.fromfile(filename, dtype=np.single)

После проверки данных я вижу, что все элементы являются нулями. Однако когда я читаю файл в Matlab, я вижу, что файл содержит правильные данные, а не нули. Я проверил файл меньшего размера (~ 2,5 ГБ), и Numpy мог прочитать это прекрасно.

Я наконец-то попытался использовать np.memmap для чтения большого файла (~ 4 ГБ), как

data = np.memmap(filename, dtype=np.single, mode='r')

и после проверки данных я вижу, что это правильночитает данные.

Мой вопрос: почему np.fromfile выдаёт мне все нули в массиве? Есть ли предел памяти для чтения файла np.fromfile?

...