Вычитание разных размеров numpy массивов - PullRequest
0 голосов
/ 31 марта 2020

Я задал предыдущий вопрос, но я думаю, что мой пример не был ясен. Я все еще пытаюсь вычесть два разных размера numpy массивов из списка numpy массивов. Например:

####Data####
### For same size numpy arrays the subtraction works fine!!!!###
easy_data= [[1,2,3],[2,2,2]],[[1,2,3],[1,2,5]]
d = [np.array(i) for i in easy_data] # List of numpy arrays
res = d[1] - d[0] 
>> array([[ 0,  0,  0],
          [-1,  0,  3]])

##### Current Issue ####
data = [[1,2,3],[2,2,2]],[[1,2,3],[1,2,5],[1,1,1]]
d = [np.array(i) for i in data]
res = d[1] - d[0] #### As the sizes are different I can't subtract them ###

Требуемый вывод

array([[ 0,  0,  0],
       [-1,  0,  3],[1,1,1])

Я немного медленнее понимаю, как работать с массивами numpy, но не могу понять как заставить это работать? Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 31 марта 2020

Проще всего работать с ломтиком. Если вы не хотите удалять исходный массив, используйте копию:

>>> res=d[1].copy()
>>> res[:d[0].shape[0]]-=d[0]
>>> res
array([[ 0,  0,  0],
       [-1,  0,  3],
       [ 1,  1,  1]])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...