Spec-Zone.ru › NumPy 1.19

numpy.fromfile

numpy.fromfile(file, dtype=float, count=-1, sep='', offset=0)

Создать массив из данных в текстовом или двоичном файле.

Высокоэффективный способ чтения двоичных данных с известным типом данных, а также парсинга просто отформатированных текстовых файлов. Данные, записанные с помощью метода tofile, можно прочитать с помощью этой функции.

Параметры
filefile or str or Path

Открытый файловый объект или имя файла.

Изменено в версии 1.17.0: pathlib.Path объекты теперь принимаются.

dtypedata-type

Тип данных возвращаемого массива. Для двоичных файлов он используется для определения размера и порядка байтов элементов в файле. Поддерживаются большинство встроенных числовых типов, а также расширенные типы.

Новое в версии 1.18.0: Сложные типы данных.

countint

Количество элементов для чтения. -1 означает все элементы (т.е. весь файл).

sepstr

Разделитель между элементами, если файл является текстовым. Пустой (“”) разделитель означает, что файл должен обрабатываться как двоичный. Пробелы (“ “) в разделителе соответствуют нулю или более пробельных символов. Разделитель, состоящий только из пробелов, должен соответствовать по крайней мере одному пробельному символу.

offsetint

Смещение (в байтах) от текущей позиции файла. По умолчанию 0. Разрешено только для двоичных файлов.

Новое в версии 1.17.0.

См. также

load, save, ndarray.tofile

loadtxt

Более гибкий способ загрузки данных из текстового файла.

Примечания

Не полагайтесь на комбинацию tofile и fromfile для хранения данных, поскольку сгенерированные двоичные файлы не являются платформенно-независимыми. В частности, информация о порядке байтов или типе данных не сохраняется. Данные можно хранить в платформенно-независимом формате .npy с помощью save и load вместо этого.

Примеры

Построение массива ndarray:

>>> dt = np.dtype([('time', [('min', np.int64), ('sec', np.int64)]),
...                ('temp', float)])
>>> x = np.zeros((1,), dtype=dt)
>>> x['time']['min'] = 10; x['temp'] = 98.25
>>> x
array([((10, 0), 98.25)],
      dtype=[('time', [('min', '<i8'), ('sec', '<i8')]), ('temp', '<f8')])

Сохранение исходных данных на диске:

>>> import tempfile
>>> fname = tempfile.mkstemp()[1]
>>> x.tofile(fname)

Чтение исходных данных с диска:

>>> np.fromfile(fname, dtype=dt)
array([((10, 0), 98.25)],
      dtype=[('time', [('min', '<i8'), ('sec', '<i8')]), ('temp', '<f8')])

Рекомендуемый способ хранения и загрузки данных:

>>> np.save(fname, x)
>>> np.load(fname + '.npy')
array([((10, 0), 98.25)],
      dtype=[('time', [('min', '<i8'), ('sec', '<i8')]), ('temp', '<f8')])

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.fromfile.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API