Сохранение и загрузка массива NumPy в Python

  1. Сохранение и загрузка массива NumPy с помощью функций numpy.savetxt() и numpy.loadtxt()
  2. Сохранение и загрузка массива NumPy с помощью функций numpy.tofile() и numpy.fromfile()
  3. Сохранение и загрузка массива NumPy с помощью функций numpy.save() и numpy.load() в Python

В этом руководстве будут обсуждаться методы сохранения и загрузки массива NumPy в Python.

Сохранение и загрузка массива NumPy с помощью функций numpy.savetxt() и numpy.loadtxt()

Функция numpy.savetxt() сохраняет массив NumPy в текстовый файл, а функция numpy.loadtxt() загружает массив NumPy из текстового файла в Python. Функция numpy.save() принимает имя текстового файла, массив, который нужно сохранить, и желаемый формат в качестве входных параметров и сохраняет массив внутри текстового файла. Функция numpy.loadtxt() берет имя текстового файла и тип данных массива и возвращает сохраненный массив. В следующем примере кода показано, как мы можем сохранить и загрузить массив NumPy с помощью функций numpy.savetxt() и numpy.loadtxt() в Python.

import numpy as np

a = np.array([1, 3, 5, 7])

np.savetxt('test1.txt', a, fmt='%d')

a2 = np.loadtxt('test1.txt', dtype=int)
print(a == a2)

Выход:

[ True  True  True  True]

В приведенном выше коде мы сохранили массив a внутри файла test1.txt с помощью функции numpy.savetxt() и загрузили массив a2 из файла test1.txt с помощью numpy.loadtxt()в Python. Сначала мы создали массив a с помощью функции np.array(). Затем мы сохранили массив a внутри файла test1.txt с помощью функции np.savetxt() и указали формат %d, то есть целочисленный формат. Затем мы загрузили сохраненный массив внутрь массива a2 с помощью функции np.loadtxt() и указали dtype=int. В итоге мы сравнили оба массива и отобразили результаты.

Этот метод значительно медленнее, чем все другие обсуждаемые здесь методы.

Сохранение и загрузка массива NumPy с помощью функций numpy.tofile() и numpy.fromfile()

Функция numpy.tofile() сохраняет массив NumPy в двоичный файл, а функция numpy.fromfile() загружает массив NumPy из двоичного файла. Функция numpy.tofile() принимает имя файла в качестве входного аргумента и сохраняет вызывающий массив внутри файла в двоичном формате. Функция numpy.fromfile() принимает имя файла и тип данных массива в качестве входных параметров и возвращает массив. В следующем примере кода показано, как сохранить и загрузить массив NumPy с помощью функций numpy.tofile() и numpy.fromfile() в Python.

import numpy as np

a = np.array([1, 3, 5, 7])

a.tofile('test2.dat')

a2 = np.fromfile('test2.dat', dtype=int)
print(a == a2)

Выход:

[ True  True  True  True]

В приведенном выше коде мы сохранили массив a внутри файла test2.dat с помощью функции numpy.tofile() и загрузили массив a2 из файла test2.dat с помощью numpy.fromfile()в Python. Сначала мы создали массив a с помощью функции np.array(). Затем мы сохранили массив a внутри файла test2.dat с помощью функции np.tofile(). Затем мы загрузили сохраненный массив внутрь массива a2 с помощью функции np.fromfile() и указали dtype=int. В итоге мы сравнили оба массива и отобразили результаты.

Этот метод быстрее и эффективнее предыдущего, но он зависит от платформы.

Сохранение и загрузка массива NumPy с помощью функций numpy.save() и numpy.load() в Python

Этот подход является независимым от платформы способом сохранения и загрузки массива NumPy в Python. Функция numpy.save() сохраняет массив NumPy в файл, а функция numpy.load() загружает массив NumPy из файла. Нам нужно указать расширение .npy для файлов в этом методе. Функция numpy.save() принимает имя файла и сохраняемого массива в качестве входных параметров и сохраняет массив внутри указанного файла. Функция numpy.load() принимает имя файла в качестве входного параметра и возвращает массив. В следующем примере кода показано, как мы можем сохранить и загрузить массив NumPy с помощью функций numpy.save() и numpy.load() в Python.

import numpy as np

a = np.array([1, 3, 5, 7])

np.save('test3.npy', a)

a2 = np.load('test3.npy')
print(a == a2)

Выход:

[ True  True  True  True]

В приведенном выше коде мы сохранили массив a внутри файла test3.npy с помощью функции numpy.save() и загрузили массив a2 из файла test3.npy с помощью numpy.load()в Python. Сначала мы создали массив a с помощью функции np.array(). Затем мы сохранили массив a внутри файла test3.npy с помощью функции np.save(). Затем мы загрузили сохраненный массив внутрь массива a2 с помощью функции np.load(). В итоге мы сравнили оба массива и отобразили результаты.

На данный момент этот метод является лучшим, поскольку он очень эффективен и не зависит от платформы.