numpy.load¶
-
numpy.
load
(file, mmap_mode=None)[source]¶ Load arrays or pickled objects from
.npy
,.npz
or pickled files.Parameters: file : file-like object or string
The file to read. File-like objects must support the
seek()
andread()
methods. Pickled files require that the file-like object support thereadline()
method as well.mmap_mode : {None, ‘r+’, ‘r’, ‘w+’, ‘c’}, optional
If not None, then memory-map the file, using the given mode (see
numpy.memmap
for a detailed description of the modes). A memory-mapped array is kept on disk. However, it can be accessed and sliced like any ndarray. Memory mapping is especially useful for accessing small fragments of large files without reading the entire file into memory.Returns: result : array, tuple, dict, etc.
Data stored in the file. For
.npz
files, the returned instance of NpzFile class must be closed to avoid leaking file descriptors.Raises: IOError
If the input file does not exist or cannot be read.
See also
save
,savez
,savez_compressed
,loadtxt
memmap
- Create a memory-map to an array stored in a file on disk.
Notes
If the file contains pickle data, then whatever object is stored in the pickle is returned.
If the file is a
.npy
file, then a single array is returned.If the file is a
.npz
file, then a dictionary-like object is returned, containing{filename: array}
key-value pairs, one for each file in the archive.If the file is a
.npz
file, the returned value supports the context manager protocol in a similar fashion to the open function:with load('foo.npz') as data: a = data['a']
The underlying file descriptor is closed when exiting the ‘with’ block.
Examples
Store data to disk, and load it again:
>>> np.save('/tmp/123', np.array([[1, 2, 3], [4, 5, 6]])) >>> np.load('/tmp/123.npy') array([[1, 2, 3], [4, 5, 6]])
Store compressed data to disk, and load it again:
>>> 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()
Mem-map the stored array, and then access the second row directly from disk:
>>> X = np.load('/tmp/123.npy', mmap_mode='r') >>> X[1, :] memmap([4, 5, 6])