python - 基于其他数组的掩码数组?

标签 python arrays numpy mask

我有一个 numpy 数组 arrayBig

10  5 27 30 34
2  34 23  2  3 
2  3  43 12 23
2  24 34  2 34

我有一个 numpy 数组 arraySmall

1 0 0 
0 1 1
1 1 0

我想要的是一个numpy数组arrayNew

34 0 0 
0 43 12
24 34 0

我知道我的 arraySmall 的形状为 (3,3) 并且位于 arrayBig 中的索引 (1 1) 。如何使用 Numpy 获取 arrayNew?

最佳答案

>>> import numpy as np
>>> arrayBig = np.array([
...     [10,  5, 27, 30, 34],
...     [2,  34, 23,  2,  3],
...     [2,   3, 43, 12, 23],
...     [2,  24, 34,  2, 34],
... ])
>>> arraySmall = np.array([
...     [1, 0, 0],
...     [0, 1, 1],
...     [1, 1, 0],
... ])
>>> arrayBig[1:4, 1:4] * arraySmall
array([[34,  0,  0],
       [ 0, 43, 12],
       [24, 34,  0]])

关于python - 基于其他数组的掩码数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22558464/

相关文章:

python - 列出类的方法,但未按字母顺序排序

python - Pytest moker 补丁属性 :Error 'function' object has no attribute 'patch'

java - 打印出数组的元素,它显示哈希码而不是值

python - 从子列表中检索升序整数的所有可能组合

python - Python 中的图像注视点

python - 字段不存在 : ManyToManyField has no field named None

android - 我可以使用 Python 编写原生 iPhone、Android、Windows、Blackberry 应用程序吗?

java - 如何使用 Guava 中的 ListMultimap 对键列表中的元素求和

numpy - 如何为 sklearn.svm.SVC 定义自定义内核函数?

python - 不使用 numpy.logic_or 的逻辑或