python - 如何在 Python 中使用 numpy 将一个数组的值替换为另一个数组

标签 python arrays numpy

我想将数组 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/

相关文章:

javascript - PHP javascript 关联数组

python - numpy 中的 block 标量向量乘法

python - Plotly/Dash - Python 如何在一段时间后停止执行?

python - 从服务器端保护 Google Cloud Functions 调用,身份验证策略?

arrays - Swift - 如何添加扩展嵌套字典?

python - pandas:为列中的每一行计算 numpy 数组的平均值

python - 使用 Numpy 与硬编码进行标准化

python - 如何正确判断类型?

Python pandas 时间序列重新采样给出了意想不到的结果

javascript - 类元素的单击显示不起作用