numpy.load
-
numpy.load(file, mmap_mode=None, allow_pickle=True, fix_imports=True, encoding='ASCII')[source] -
Загрузка массивов или сериализованных объектов из
.npy,.npzили сериализованных файлов.Параметры: file : объект-подобный файлу или строка
Файл для чтения. Объекты-подобные файлу должны поддерживать методы
seek()иread(). Для сериализованных файлов также требуется, чтобы объект-подобный файлу поддерживал методreadline().mmap_mode : {None, ‘r+’, ‘r’, ‘w+’, ‘c’}, необязательно
Если не None, то файл будет отображен в памяти с использованием указанного режима (см.
numpy.memmapдля подробного описания режимов). Массив, отображенный в памяти, хранится на диске. Однако к нему можно получить доступ и делать срез, как к любому ndarray. Отображение в памяти особенно полезно для доступа к небольшим фрагментам больших файлов без чтения всего файла в память.allow_pickle : bool, необязательно
Разрешить загрузку сериализованных массивов объектов, хранящихся в файлах npy. Причины запрета сериализации включают безопасность, так как загрузка сериализованных данных может выполнять произвольный код. Если сериализация запрещена, загрузка массивов объектов завершится ошибкой. По умолчанию: True
fix_imports : bool, необязательно
Полезно только при загрузке сериализованных файлов, сгенерированных в Python 2, в Python 3, что включает файлы npy/npz, содержащие массивы объектов. Если
fix_importsравно True, pickle попытается сопоставить старые имена Python 2 с новыми именами, используемыми в Python 3.encoding : str, необязательно
Кодировка, используемая при чтении строк Python 2. Полезно только при загрузке сериализованных файлов, сгенерированных в Python 2, в Python 3, что включает файлы npy/npz, содержащие массивы объектов. Значения, отличные от ‘latin1’, ‘ASCII’ и ‘bytes’, не допускаются, так как они могут повредить числовые данные. По умолчанию: ‘ASCII’
Возвращает: result : массив, кортеж, словарь и т.д.
Данные, хранящиеся в файле. Для файлов
.npz, возвращаемый экземпляр класса NpzFile необходимо закрыть, чтобы избежать утечки дескрипторов файлов.Возможные исключения: IOError
Если входной файл не существует или не может быть прочитан.
ValueError
Файл содержит массив объектов, но задано allow_pickle=False.
См. также
save,savez,savez_compressed,loadtxtmemmap- Создать отображение в памяти массива, хранящегося в файле на диске.
Примечания
- Если файл содержит данные pickle, то возвращается объект, сохраненный в pickle.
- Если файл является файлом
.npy, то возвращается единственный массив. - Если файл является файлом
.npz, то возвращается объект, подобный словарю, содержащий пары{filename: array}ключ-значение, по одной для каждого файла в архиве. -
Если файл является файлом
.npz, возвращаемое значение поддерживает протокол менеджера контекста аналогичным образом функции open:with load('foo.npz') as data: a = data['a']Дескриптор базового файла закрывается при выходе из блока ‘with’.
Примеры
Сохранить данные на диске и загрузить их снова:
>>> np.save('/tmp/123', np.array([[1, 2, 3], [4, 5, 6]])) >>> np.load('/tmp/123.npy') array([[1, 2, 3], [4, 5, 6]])Сохранить сжатые данные на диске и загрузить их снова:
>>> a=np.array([[1, 2, 3], [4, 5, 6]]) >>> b=np.array([1, 2]) >>> np.savez('/tmp/123.npz', a=a, b=b) >>> data = np.load('/tmp/123.npz') >>> data['a'] array([[1, 2, 3], [4, 5, 6]]) >>> data['b'] array([1, 2]) >>> data.close()Создать отображение в памяти сохраненного массива и получить доступ ко второй строке непосредственно с диска:
>>> X = np.load('/tmp/123.npy', mmap_mode='r') >>> X[1, :] memmap([4, 5, 6])
© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/generated/numpy.load.html