我想将数组 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')
但我必须找到掩码或所有索引。
该怎么做?
最佳答案
使用索引将其分配到您想要的位置
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]])
关于python - 如何在 Python 中使用 numpy 将一个数组的值替换为另一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50568508/