Вычитание и / или изменение формы массива

Я хотел бы помочь с проблемой. В Python:

a=array([2,2])
b=ones((2,10))

Я хотел бы знать, есть ли функция, которая позволяет мне вычесть ba, чтобы получить массив 2x10, полный -1.

Я могу сделать это один с 1D массивами, я просто хотел знать, возможно ли это сделать с 2D массивами.

Спасибо

2 ответа

Решение

Добавить новое измерение в a:

b - a[:,None]

где a[:,None] становится array([[2], [2]])массив 2x1, который вы можете вычесть из массива 2x10 и получить массив 2x10, заполненный -1.

Вы хотите иметь массив 2x10, полный -1.

Почему бы тебе просто так не сделать:

b = np.ones((2, 10)) * -1

array([[-1., -1., -1., -1., -1., -1., -1., -1., -1., -1.],
       [-1., -1., -1., -1., -1., -1., -1., -1., -1., -1.]])
Другие вопросы по тегам