Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
01 Май 2023
1 мин
1622

Значение -1 в методе reshape() в numpy

Часто в numpy встречается применение метода reshape(-1). Давайте разберемся, что означает -1 в этом случае. Рассмотрим типичный пример. Есть двумерный массив,

Часто в numpy встречается применение метода reshape(-1). Давайте разберемся, что означает -1 в этом случае.

Рассмотрим типичный пример. Есть двумерный массив, который нужно преобразовать в одномерный массив.

import numpy as np
a = np.array([[1, 2, 3], [4, 5, 6]])
print(a)

Вывод будет такой:

[[1 2 3]
 [4 5 6]]

Теперь применим метод reshape(-1):

b = a.reshape(-1)
print(b)

И получим следующий вывод:

[1 2 3 4 5 6]

В этом примере двумерный массив преобразован в одномерный.

Так что же означает -1 в этом контексте?

В методе reshape() в numpy, -1 означает, что размерность этой оси определяется автоматически. То есть, numpy сам рассчитает количество элементов этой оси, исходя из размера оставшихся осей и общего количества элементов в исходном массиве.

В примере выше, когда мы вызываем reshape(-1), мы говорим numpy «сделай массив одномерным, независимо от его исходной формы».

Таким образом, -1 в reshape() используется для автоматического вычисления размера одной из осей массива. Это удобно, когда точная форма исходного массива заранее неизвестна, но требуется привести его к определенной форме.

Проверь как ты усвоил материалы статьи
Пройди тест и узнай насколько ты лучше других читателей

Добавить комментарий