Функция np.savext() предназначена для сохранения двумерных массивов в текстовый файл, что позволяет эффективно хранить и совместно использовать данные. Он предоставляет ряд параметров для управления форматом, разделителем, заголовком и другими аспектами выходного файла.
- В синтаксисе
- В параметрах
- Возвращаемые значения
- 1. Функция np savetxt
- 2. Функция savetxt в NumPy с указанием формата
- 3. Функция savetxt NumPy с использованием разделителей
- 4. Заголовок savetxt
- 5. Добавление NumPy savetxt
- Заключение
В синтаксисе
Основной синтаксис функции np.savext() в Python следующий:
numpy.savetxt(fname, X, fmt='%.18e', delimiter=' ', newline='\n', header='', footer='', comments='# ')
В параметрах
Здесь:
- fname: имя файла или дескриптор файла. Если имя файла заканчивается на .gz, файл автоматически сохраняется в сжатом формате gzip.
- X: Массив, который нужно сохранить. Это должен быть 2D-массив в Python.
- fmt: строка формата или последовательность строк формата, управляющая форматом отдельных столбцов.
- separator: строка или символ, разделяющий столбцы.
- new line: строка или символ, разделяющий строки.
- heading: строка, которая будет записана в начале файла.
- footer: строка, которая будет записана в конце файла.
- Comments: строка, которая будет добавлена к строкам верхнего и нижнего колонтитула, чтобы пометить их как комментарии.
Возвращаемые значения
Функция np.savext() в Python не возвращает значение, а записывает массив в файл в указанном формате.
Давайте рассмотрим некоторые варианты использования функции np.savext() в Python.
1. Функция np savetxt
Функция np.savext() в Python используется для сохранения данных двумерного массива NumPy в текстовый файл.
Используются настройки по умолчанию, что означает, что данные форматируются как числа с плавающей запятой и разделяются пробелами.
import numpy as np temperature_data = np.array([[58, 62], [60, 64], [59, 65], [61, 66], [63, 68], [65, 70], [66, 71]]) np.savetxt('nyc_temperature_data.txt', temperature_data) with open('nyc_temperature_data.txt', 'r') as file: nyc_temp_data = file.read() print("New York City Temperature Data:\n", nyc_temp_data)
Выход:
New York City Temperature Data: 5.800000000000000000e+01 6.200000000000000000e+01 6.000000000000000000e+01 6.400000000000000000e+01 5.900000000000000000e+01 6.500000000000000000e+01 6.100000000000000000e+01 6.600000000000000000e+01 6.300000000000000000e+01 6.800000000000000000e+01 6.500000000000000000e+01 7.000000000000000000e+01 6.600000000000000000e+01 7.100000000000000000e+01
Ниже показан снимок экрана, на котором запечатлен результат выполнения кода в редакторе PyCharm.
2. Функция savetxt в NumPy с указанием формата
Данные массива сохраняются в текстовый файл, но со спецификатором формата %d, что означает, что каждое число сохраняется как целое число. Это изменяет представление с плавающей запятой по умолчанию на целочисленный формат.
import numpy as np stock_prices = np.array([[152.35], [153.40], [154.55], [152.75], [153.80]]) np.savetxt('stock_prices.txt', stock_prices, fmt='%.2f') with open('stock_prices.txt', 'r') as file: stock_prices_data = file.read() print("Stock Prices Data:\n", stock_prices_data)
Выход:
Stock Prices Data: 152.35 153.40 154.55 152.75 153.80
На следующем снимке экрана показаны результаты, полученные при выполнении кода в редакторе PyCharm.
3. Функция savetxt NumPy с использованием разделителей
Массив сохраняется в текстовый файл на Python с использованием запятой в качестве разделителя между значениями в каждой строке. Это полезно для создания файлов CSV (значения, разделенные запятыми).
import numpy as np baseball_stats = np.array([[5, 8, 0], [3, 7, 1], [6, 9, 0], [4, 6, 2]]) np.savetxt('baseball_stats.csv', baseball_stats, delimiter=',') with open('baseball_stats.csv', 'r') as file: baseball_stats_data = file.read() print("Baseball Statistics Data:\n", baseball_stats_data)
Выход:
Baseball Statistics Data: 5.000000000000000000e+00,8.000000000000000000e+00,0.000000000000000000e+00 3.000000000000000000e+00,7.000000000000000000e+00,1.000000000000000000e+00 6.000000000000000000e+00,9.000000000000000000e+00,0.000000000000000000e+00 4.000000000000000000e+00,6.000000000000000000e+00,2.000000000000000000e+00
После выполнения кода в Pycharm результат можно увидеть на снимке экрана ниже.
4. Заголовок savetxt
Чтобы добавить заголовок в текстовый файл, мы можем использовать функцию np.savext() в Python. Они полезны для предоставления дополнительной информации или контекста данных.
import numpy as np demographic_data = np.array([[25, 45000], [32, 55000], [45, 62000], [29, 48000]]) np.savetxt('la_demographics.txt', demographic_data, header='Age, Income Bracket', comments='# ') with open('la_demographics.txt', 'r') as file: la_demo_data = file.read() print("Los Angeles Demographic Data:\n", la_demo_data)
Выход:
Los Angeles Demographic Data: # Age, Income Bracket 2.500000000000000000e+01 4.500000000000000000e+04 3.200000000000000000e+01 5.500000000000000000e+04 4.500000000000000000e+01 6.200000000000000000e+04 2.900000000000000000e+01 4.800000000000000000e+04
Ниже приведен скриншот после реализации кода в редакторе Pycharm.
5. Добавление NumPy savetxt
Обычно numpy.savext() перезаписывает существующий файл. Вместо этого, чтобы добавить данные, вам нужно открыть файл в режиме добавления и передать дескриптор файла в numpy.savext().
import numpy as np temperature_data = np.array([[58, 62], [60, 64], [59, 65], [61, 66]]) np.savetxt('nyc_temperature_data.txt', temperature_data) additional_data = np.array([[67, 72], [68, 73]]) with open('nyc_temperature_data.txt', 'ab') as f: np.savetxt(f, additional_data) with open('nyc_temperature_data.txt', 'r') as file: updated_nyc_temp_data = file.read() print("Updated New York City Temperature Data:\n", updated_nyc_temp_data)
Выход:
Updated New York City Temperature Data: 5.800000000000000000e+01 6.200000000000000000e+01 6.000000000000000000e+01 6.400000000000000000e+01 5.900000000000000000e+01 6.500000000000000000e+01 6.100000000000000000e+01 6.600000000000000000e+01 6.700000000000000000e+01 7.200000000000000000e+01 6.800000000000000000e+01 7.300000000000000000e+01
После реализации кода в редакторе Pycharm снимок экрана указан ниже.
Заключение
В этой статье представлено подробное объяснение функции np.savext() в Python, включая ее синтаксис, необходимые параметры и возвращаемые значения. Кроме того, я проиллюстрировал различные практические применения функции np.savext() в Python на нескольких примерах.