Spec-Zone.ru › NumPy 2.0

numpy.fromfile

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

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

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

Параметры:
filefile или str или Path

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

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

dtypeтип данных

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

Новое в версии 1.18.0: Комплексные типы данных.

countint

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

sepstr

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

offsetint

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

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

likearray_like, необязательно

Объект-ссылка для создания массивов, которые не являются массивами NumPy. Если передаваемый в качестве like массив-подобный объект поддерживает протокол __array_function__, результат будет определяться им. В этом случае гарантируется создание объекта массива, совместимого с передаваемым через этот аргумент.

Новое в версии 1.20.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–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.fromfile.html

Spec-Zone.ru

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