Выход pad
является 2D, потому что вход pad
был 2D.По какой-то причине вы создали двумерный массив с rand
:
v = np.random.rand(100, 1)
Если вы хотели 1D-массив, вы должны были создать 1D-массив:
v = np.random.rand(100)
Если вы хотели2D-массив из 1 столбца, то вы неправильно используете pad
.Второй аргумент должен быть ((100, 0), (0, 0))
: заполнение 100 элементов до первой оси, 0 элементов после первой оси, 0 элементов до второй оси, 0 элементов после второй оси:
v = np.random.rand(100, 1)
pad_size = 100
v = np.pad(v, ((pad_size, 0), (0, 0)), 'constant')
Для 1-рядного двумерного массива вам необходимо настроить как вызов rand
, так и вызов pad
:
v = np.random.rand(1, 100)
pad_size = 100
v = np.pad(v, ((0, 0), (pad_size, 0)), 'constant')