我是一个有用的助手,可以将文本翻译成中文。
我有一个非常大的2D numpy数组,其中包含我需要取平均值的2x2子集。我正在寻找一种向量化此操作的方法。例如,给定x:
我需要得到一个2x3的数组,其中每个2x2子数组的平均值组成该数组,即:
因此,元素[0,0]被计算为x [0:2,0:2]的平均值,而元素[0,1]将是x [2:4,0:2]的平均值。NumPy是否有对这样的子集进行聚合的向量化/高效方法?
我有一个非常大的2D numpy数组,其中包含我需要取平均值的2x2子集。我正在寻找一种向量化此操作的方法。例如,给定x:
# |- col 0 -| |- col 1 -| |- col 2 -|
x = np.array( [[ 0.0, 1.0, 2.0, 3.0, 4.0, 5.0], # row 0
[ 6.0, 7.0, 8.0, 9.0, 10.0, 11.0], # row 0
[12.0, 13.0, 14.0, 15.0, 16.0, 17.0], # row 1
[18.0, 19.0, 20.0, 21.0, 22.0, 23.0]]) # row 1
我需要得到一个2x3的数组,其中每个2x2子数组的平均值组成该数组,即:
result = np.array( [[ 3.5, 5.5, 7.5],
[15.5, 17.5, 19.5]])
因此,元素[0,0]被计算为x [0:2,0:2]的平均值,而元素[0,1]将是x [2:4,0:2]的平均值。NumPy是否有对这样的子集进行聚合的向量化/高效方法?