Функция atleast_2d
Функция atleast_2d преобразует входные данные
в двумерный массив. Она принимает один или несколько
аргументов (скаляры, списки или массивы) и возвращает
двумерные массивы. Если передан скаляр или одномерный
массив, они преобразуются в двумерные добавлением
новой оси. Многомерные массивы остаются без изменений.
Эта функция полезна, когда нужно гарантировать,
что данные имеют минимум две размерности для
дальнейших операций.
Синтаксис
np.atleast_2d(*arrays)
Параметры:
- arrays - один или несколько скаляров, списков, кортежей или массивов NumPy.
Возвращает:
- двумерный массив для одного аргумента или список двумерных массивов для нескольких.
Пример
Применим atleast_2d к скаляру:
import numpy as np
res = np.atleast_2d(5)
print(res)
Результат выполнения кода:
[[5]]
Скаляр превращается в массив формы (1, 1).
Пример
Применим atleast_2d к одномерному массиву:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
res = np.atleast_2d(arr)
print(res)
Результат выполнения кода:
[[1 2 3 4 5]]
Одномерный массив формы (5,) становится двумерным формы (1, 5).
Пример
Применим atleast_2d к двумерному массиву:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
res = np.atleast_2d(arr)
print(res)
Результат выполнения кода:
[[1 2 3]
[4 5 6]]
Форма массива не изменилась, так как он уже двумерный.
Пример
Передадим несколько аргументов в atleast_2d:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([[4, 5], [6, 7]])
res1, res2 = np.atleast_2d(arr1, arr2)
print(res1)
print(res2)
Результат выполнения кода:
[[1 2 3]]
[[4 5]
[6 7]]
Первый одномерный массив стал двумерным, второй остался без изменений.
Пример
Применим atleast_2d к трёхмерному массиву:
import numpy as np
arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
res = np.atleast_2d(arr)
print(res.shape)
Результат выполнения кода:
(2, 2, 2)
Форма осталась прежней, так как массив уже имеет две или более размерности.
Смотрите также
-
функцию
atleast_1d,
которая приводит данные к одномерному массиву -
функцию
atleast_3d,
которая приводит данные к трёхмерному массиву -
функцию
reshape,
которая изменяет форму массива без изменения данных -
функцию
expand_dims,
которая добавляет новую ось в указанной позиции