Как заменить значения массива другим массивом, используя numpy в Python - PullRequest
0 голосов
/ 28 мая 2018

Я хочу поместить массив B (без циклов) в массив A с начальным индексом A [0,0]

A=np.empty((3,3))
A[:] = np.nan
B=np.ones((2,2))

Результат должен быть:

array([[  1.,   1.,  nan],
       [  1.,   1.,  nan],
       [ nan,  nan,  nan]])

Я пробовал numpy.place(arr, mask, vals) и numpy.put(a, ind, v, mode='raise'), но мне нужно найти маску или все индексы.

Как это сделать?

1 Ответ

0 голосов
/ 28 мая 2018

Назначьте его там, где вы хотите, используя индексацию

import numpy as np
A = np.empty((3,3))
a[:] = np.nan
B = np.ones((2,2))
A[:B.shape[0], :B.shape[1]] = B



array([[1.00000000e+000, 1.00000000e+000, nan],
       [1.00000000e+000, 1.00000000e+000, nan],
       [nan, nan, nan]])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...