python - 如何使用另一个数组中的值更新 numpy 数组的所有值

标签 python arrays numpy

*问题已编辑/更新以添加示例

大家好!我有这个a np.array。根据它的引用值,我想更新数组b,这是我的矩阵。 a 的“第一列”代表一个代码,“第二列”是我的引用值。矩阵中充满了代码,我必须替换它们。请参阅下面的示例。

import numpy as np
a = np.asarray([[0, 11], [1, 22], [2, 33]])
b = np.asarray([[0, 14, 12, 2], [1, 1, 7, 0], [0, 0,3,5], [1, 2, 2, 6]])

换句话说:我想将“b”中的 0、1、2 值分别替换为 11、22、33。

考虑到我的真实 a 数组有 +- 50 个代码,而我真实的 b 矩阵的形状为 (850,850),这是最好的方法。

提前致谢!

最佳答案

如果我正确理解了这个问题,这个例子应该显示你想要什么?

假设 a 是您上面列出的矩阵,b 是您要写入的列表

import numpy as np
a = np.asarray([[0, 10], [2, 30], [1, 40]])
b = np.zeros(3)
b[a[:, 0]] = a[:, 1]

其中 [:, 0] 是要更改的索引,[:, 1] 是要填充的内容

关于python - 如何使用另一个数组中的值更新 numpy 数组的所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53797920/

相关文章:

python - PyTorch:如何打印网络中每一层的输出 blob 大小?

javascript - 通过 Typescript 中的位置获取数组数据

python - django.db.utils.OperationalError : server closed the connection unexpectedly

python 卡夫卡: Is there a way to block a consumer on a kafka topic till a new message is posted?

javascript - 无论输入如何,函数都返回 true

javascript - 从 JS 数组中删除重复项

python - 基于多列的 Pandas 多个条件

python - 当我需要 numpy 数组的大小时,Cython 放弃 gil

python - numpy 中向量化函数的性能行为

python - 如何计算 Pandas DataFrame 上的滚动累积乘积