python - 处理 numpy 数组中选定范围的值

标签 python numpy

假设我有一个 5x5 数组:

import numpy as np
arr = np.random.rand(5,5)

如果我想对整个数组求和,我可以简单地拥有:

np.sum(arr)

我将如何对由左上角 (2,2) 和右下角 (4,3) 定义的框中的值求和?

如果这不是很清楚,我想对下面数组中的粗体 x 求和:

X X X X X

X X X X X

X X X X X

X X X X X

X X X X X

最佳答案

像这样使用切片:

import numpy as np
arr = np.random.rand(5,5)

# Top left 2*2 grid
np.sum(arr[:2, :2])

要对图表中的数组求和,请使用:

np.sum(arr[1:4, 1:3])

关于python - 处理 numpy 数组中选定范围的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32439264/

相关文章:

python - 在具有时间限制的图中找到所有可能的路径

python - 返回非实例化类类型的类型提示

python - 秒系列中的 Pandas 日期时间索引

python - 根据numpy中的顶点坐标选择网格的面

python - 如何向量化这个矩阵运算?

python - 在云上连续 24/7 连续运行 Python 脚本

python - 调试 gdb pretty-print

python - sqlite3 fetchall 有必要吗?

Python:在零数组中初始化 numpy 数组

python - 遍历 3D 数组时 Numba 降低错误