Как использовать np.arrange в Python?
NumPy arange(): Как использовать np.arange()
by Mirko Stojiljković data-science intermediate numpy
NumPy - это основная библиотека Python для численных вычислений. Ее самый важный тип - это массив, называемый ndarray
. NumPy предлагает множество функций создания массивов для различных случаев. Одной из таких функций, основанных на числовых диапазонах, является arange()
. Он часто называется np.arange()
, поскольку np
широко используется как сокращение для NumPy.
By the end of this article, you ‘ll know:
- Что такое
np.arange()
- Как использовать
np.arange()
- Какие функции аналогичны
np.arange()
Давайте рассмотрим использование np.arange()
!
Бесплатный бонус: Нажмите здесь, чтобы получить доступ к бесплатному руководству по ресурсам NumPy, которое поможет вам найти лучшие учебники, видеоуроки и книги для улучшения ваших навыков NumPy.
Возвращаемое значение и параметры np.arange()
NumPy arange()
является одной из функций создания массивов на основе числовых диапазонов. Она создает экземпляр ndarray
со равномерно распределенными значениями и возвращает ссылку на него.
Вы можете определить интервал значений, содержащихся в массиве, промежуток между ними и их тип с помощью четырех параметров arange()
:
Python
Скопировано!
Первые три параметра определяют диапазон значений, а четвертый задает тип элементов:
stop
- число, определяющее конец массива и не включенное в массив.step
- число, определяющее шаг (разницу) между каждыми двумя последовательными значениями в массиве и по умолчанию равно1
.
step
не может быть равным нулю. В противном случае вы получите ошибку ZeroDivisionError
. Если увеличение или уменьшение равно 0
, то вы не сможете перемещаться относительно start
.
Если dtype
не указан, то arange()
создаст массив с элементами типа, соответствующими заданным значениям.
Охватим весь процесс использования np.arange()
на примерах кода.
Диапазон аргументов np.arange()
Предоставление всех аргументов диапазона
В первом примере мы предоставим все аргументы диапазона, чтобы создать массив с числами от 0 до 5:
Вывод:
В этом примере мы указали start
равным 0, stop
равным 6 и step
равным 1. Результатом является массив, содержащий числа от 0 до 5 с интервалом 1.
Предоставление двух аргументов диапазона
Во втором примере мы предоставим только два аргумента диапазона, чтобы создать массив с числами от 2 до 10 с шагом 2:
Вывод:
В этом примере мы указали start
равным 2, stop
равным 11 и step
равным 2. Результатом является массив, содержащий числа от 2 до 10 с интервалом 2.
Предоставление одного аргумента диапазона
В третьем примере мы предоставим только один аргумент диапазона, чтобы создать массив с числами от 0 до 4:
Вывод:
В этом примере мы указали stop
равным 5, а start
и step
не указывали. Результатом является массив, содержащий числа от 0 до 4 с интервалом 1 (значение по умолчанию для step
).
Предоставление отрицательных аргументов
В четвертом примере мы предоставим отрицательные аргументы диапазона, чтобы создать массив с числами от 5 до 0 с шагом -1:
Вывод:
В этом примере мы указали start
равным 5, stop
равным -1 и step
равным -1. Результатом является массив, содержащий числа от 5 до 0 с шагом -1.
Обратный отсчет
В пятом примере мы предоставим отрицательный step
, чтобы создать массив с числами от 10 до 1 с шагом -1:
Вывод:
В этом примере мы указали start
равным 10, stop
равным 0 и step
равным -1. Результатом является массив, содержащий числа от 10 до 1 с шагом -1.
Получение пустых массивов
В шестом примере мы предоставим значения start
и stop
таким образом, что получим пустой массив:
Вывод:
В этом примере мы указали start
равным 5 и stop
равным 0. Поскольку start
больше или равен stop
, то созданный массив будет пустым.
Типы данных np.arange()
По умолчанию тип элементов, содержащихся в массиве, созданном с помощью np.arange()
, будет целочисленным. Однако вы можете указать желаемый тип элементов с помощью параметра dtype
. Вот пример:
Вывод:
В этом примере мы указали start
равным 0, stop
равным 5 и dtype
равным float
. Результатом является массив, содержащий числа от 0 до 4 с интервалом 1 и типом данных float
.
Превышение простых диапазонов с помощью np.arange()
np.arange()
позволяет более гибко создавать массивы, чем встроенный класс Python range
. Он позволяет создавать массивы с нецелыми значениями, с разными интервалами между значениями и т.д. Вот несколько примеров, которые показывают возможности np.arange()
:
В выводе мы получим следующие массивы:
Как видно из примеров, np.arange()
позволяет создавать массивы с различными значениями и интервалами между ними.
Сравнение функции range
и np.arange()
Параметры и результаты
Встроенный класс Python range
и функция np.arange()
имеют схожие параметры и результаты, но есть некоторые различия. Вот таблица, которая показывает их сравнение:
Параметры/результаты | range | np.arange() |
---|---|---|
Start | Включен | Включен |
Stop | Исключен | Исключен |
Step | Целое число | Любое число (целое или десятичное) |
Тип данных | Целые числа | Любой тип данных |
Интервал по умолчанию | 1 | 1 |
Возможность создания пустых массивов | Нет | Да |
Создание последовательностей
С помощью range
можно создавать целочисленные последовательности, но np.arange()
предлагает гораздо больше гибкости при создании последовательностей. Он позволяет создавать последовательности с десятичными числами, любыми шагами и указанием типа данных элементов.
Циклы for
в Python
Обычно, для итерации по элементам последовательности, созданной с помощью range
или np.arange()
, используется цикл for
в Python. Вот пример:
В обоих случаях вывод будет следующим:
Как видно из примеров, range()
и np.arange()
могут использоваться в цикле for
для итерации по последовательностям элементов.
Другие функции, основанные на числовых диапазонах
В NumPy есть и другие функции, которые основаны на числовых диапазонах. Некоторые из них:
numpy.linspace()
- создает массив со значениями, равномерно распределенными между указанными начальным и конечным значениями.numpy.logspace()
- создает массив со значениями, равномерно распределенными в логарифмическом масштабе между указанными начальным и конечным значениями.numpy.geomspace()
- создает массив со значениями, равномерно распределенными в геометрической прогрессии между указанными начальным и конечным значениями.
Краткое резюме
В этой статье мы рассмотрели функцию np.arange()
из библиотеки NumPy. Вы узнали, как использовать np.arange()
для создания массивов на основе числовых диапазонов со специфическими значениями и интервалами. Также было проведено сравнение np.arange()
с встроенным классом Python range
и рассмотрены другие функции в библиотеке NumPy, основанные на числовых диапазонах.
Заключение
В этой статье мы рассмотрели функцию NumPy arange()
и ее использование для создания массивов на основе числовых диапазонов. Вы изучили, как использовать np.arange()
для создания последовательностей чисел с определенными значениями и интервалами. Вы также сравнили np.arange()
с встроенным классом range
в Python и узнали о других функциях в библиотеке NumPy, основанных на числовых диапазонах.
Теперь вы обладаете достаточными знаниями, чтобы использовать np.arange()
эффективно в своих программах Python.