Функция NumPy linspace создает в Python массив чисел с одинаковым интервалом в заданном интервале. Его можно использовать для создания массива только с плавающими значениями, только целочисленными значениями или комплексными значениями. Мы также можем создать 2D-массив.
В библиотеке Python NumPy функция linspace используется для создания массива равномерно расположенных значений в течение заданного интервала.
Название «linspace» означает «линейно разнесенный». Эта функция особенно полезна, когда нам нужно сгенерировать определенное количество точек между начальной и конечной точкой, например, при попытке создать диапазон значений x для построения графика с помощью Python.
Пример. Давайте рассмотрим один базовый пример, чтобы понять, что представляет собой функция linspace() в библиотеке Python NumPy.
import numpy as np linear_space = np.linspace(0, 1, num=10) print(linear_space)
Вывод:
[0. 0.11111111 0.22222222 0.33333333 0.44444444 0.55555556 0.66666667 0.77777778 0.88888889 1. ]
Теперь давайте посмотрим, как функция NumPy linspace() систематически работает в Python.
- Синтаксис
- Параметры
- Возвращаемое значение
- Случай 1: с параметрами start, stop и num
- Случай 2: с конечной точкой
- Случай 3: linspace float
- Случай 4: в линейном пространстве
- Случай 5: комплексные числа
- Случай 6: массив
- Случай 7: двумерный массив
- Заключение
Синтаксис
Основной синтаксис функции linspace NumPy в Python:
numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)
Параметры
Параметры внутри линейного пространства NumPy в Python:
Имя | Описание |
---|---|
start | Начальное значение последовательности. |
stop | Конечное значение последовательности, если для конечной точки не установлено значение False. В этом случае остановкой является значение непосредственно перед концом последовательности. |
num | Количество равномерно расположенных выборок, которые необходимо сгенерировать. По умолчанию — 50. |
endpoint | Если True(по умолчанию), остановкой является последняя выборка. В противном случае он не включается. |
retstep | Если True, возврат(выборки, шаг), где шаг — это интервал между выборками. |
dtype | Тип выходного массива в Python. Если dtype не указан, тип данных выходного массива выводится из начала и остановки. Выведенный тип dtype никогда не будет целым числом; это будет как минимум float64. |
axis | Ось результата хранит образцы. Актуально только в том случае, если start или stop в Python аналогичны массиву. |
Возвращаемое значение
Функция numpy.linspace возвращает массив чисел с одинаковым интервалом в заданном интервале в Python. Основное возвращаемое значение — это массив NumPy.
Мы можем получить множество разных массивов NumPy в Python, задав разные параметры. Давайте рассмотрим их один за другим в качестве примера.
Случай 1: с параметрами start, stop и num
Здесь давайте рассмотрим пример, в котором мы возьмем базовый параметр, необходимый для функции np.linspace() в Python.
import numpy as np arr = np.linspace(0, 10, num=5) print(arr)
Вывод:
[ 0. 2.5 5. 7.5 10. ]
Это базовое использование линейного пространства NumPy в Python только с параметрами start, stop и num.
Случай 2: с конечной точкой
Рассмотрим ситуацию, когда нам нужно поместить параметр endpoint=False в linspace() в Python NumPy.
import numpy as np arr = np.linspace(0, 10, num=5, endpoint=False) print(arr)
Вывод:
[0. 2. 4. 6. 8.]
Случай 3: linspace float
Плавающие числа — наиболее распространенный тип данных, используемый в linspace. Это связано с тем, что функция NumPy Python linspace() по своей сути занимается разделением интервалов, что часто приводит к получению чисел с плавающей запятой:
import numpy as np float_array = np.linspace(1.0, 2.0, num=10) print(float_array)
Вывод:
[1. 1.11111111 1.22222222 1.33333333 1.44444444 1.55555556 1.66666667 1.77777778 1.88888889 2. ]
Чтобы получить все значения с плавающей запятой внутри массива, мы можем использовать линейное пространство NumPy в Python.
Случай 4: в линейном пространстве
Хотя np.linspace предназначен для чисел с плавающей запятой в Python, его можно использовать для генерации целых чисел, установив для dtype целочисленный тип в Python.
import numpy as np int_array = np.linspace(10, 50, num=5, dtype=int) print(int_array)
Вывод:
[10 20 30 40 50]
Случай 5: комплексные числа
numpy.linspace также может обрабатывать комплексные числа. Это особенно полезно при работе с приложениями по обработке сигналов или комплексному анализу на Python.
import numpy as np complex_array = np.linspace(1+1j, 10+10j, num=4) print(complex_array)
Вывод:
[ 1. +1.j 4. +4.j 7. +7.j 10.+10.j]
Случай 6: массив
Создание одномерных массивов NumPy — это поведение np.linspace() по умолчанию в Python.
import numpy as np one_d_array = np.linspace(0, 1, num=20) print(one_d_array)
Вывод:
[0. 0.05263158 0.10526316 0.15789474 0.21052632 0.26315789 0.31578947 0.36842105 0.42105263 0.47368421 0.52631579 0.57894737 0.63157895 0.68421053 0.73684211 0.78947368 0.84210526 0.89473684 0.94736842 1. ]
Случай 7: двумерный массив
Хотя numpy.linspace по своей сути генерирует 1D-массив в Python, мы можем легко преобразовать его в 2D или использовать в сочетании с другими функциями для создания 2D-массивов в Python.
import numpy as np two_d_array = np.linspace(0, 1, num=20).reshape(4, 5) print(two_d_array)
Вывод:
[[0. 0.05263158 0.10526316 0.15789474 0.21052632] [0.26315789 0.31578947 0.36842105 0.42105263 0.47368421] [0.52631579 0.57894737 0.63157895 0.68421053 0.73684211] [0.78947368 0.84210526 0.89473684 0.94736842 1. ]]
Заключение
NumPy linspace в Python — это мощный и универсальный инструмент, который обеспечивает простой способ создания линейно расположенных значений для различных приложений. Это важно для создания тестовых данных, моделирования и мелкомасштабных сеток для оценок и визуализаций.