Иногда, возникает необходимость в создании числовых последовательностей. Библиотека NumPy предлагает универсальный инструмент для этой цели — функцию np.arange()
.
Функция np.arange()
в NumPy позволяет создавать одномерные массивы с равномерно разнесенными значениями в заданном диапазоне. Она подобна встроенной функции range()
в Python, но генерирует массивы и предоставляет больше гибкости.
numpy.arange([start, ]stop, [step, ], dtype=None)
start
: Начальное значение диапазона (по умолчанию 0).stop
: Конечное значение диапазона (не включительно).step
: Шаг между значениями (по умолчанию 1).dtype
: Желаемый тип данных для выводимого массива.Как создать простую последовательность чисел от 0 до 9?
import numpy as np
sequence = np.arange(10)
print(sequence)
# [0 1 2 3 4 5 6 7 8 9]
Что, если вы хотите создать последовательность чисел от 5 до 50 с шагом 5?
sequence_step = np.arange(5, 51, 5)
print(sequence_step)
# [ 5 10 15 20 25 30 35 40 45 50]
np.arange()
также может генерировать последовательности чисел с плавающей точкой.
float_sequence = np.arange(0, 1, 0.1)
print(float_sequence)
# [0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9]
Важно помнить, что когда вы используете np.arange()
с числами с плавающей точкой (например, np.arange(0, 1, 0.1)
), из-за ограничений точности представления чисел с плавающей точкой, результирующий массив может иногда не включать верхний конец диапазона. В таких случаях рекомендуется использовать функцию np.linspace()
, которая генерирует массив чисел на равных интервалах.
Пример:
import numpy as np
# np.linspace(start, stop, num)
# Создает массив из 10 чисел от 0 до 1
linspace_sequence = np.linspace(0, 1, 10)
print(linspace_sequence)
Хотя np.arange()
и встроенная функция range()
Python могут казаться схожими, np.arange()
предлагает следующие преимущества:
range()
работает только с целыми числами, np.arange может создавать последовательности с плавающей точкой.np.arange()
возвращает массив NumPy, вы можете непосредственно использовать результат с другими функциями NumPy без необходимости преобразования.np.arange()
может работать быстрее, чем преобразованный в список объект range()
.Функция np.arange()
является ключевым инструментом для широкого круга задач, от создания базовых числовых последовательностей до сложных вычислительных симуляций.
Содержание: