【发布时间】:2021-12-31 01:38:57
【问题描述】:
我有一个 2d numpy 数组,其形状为 - (20,1200),例如24000 像素,值为零和一。 我想用 (4,60) 的块进行迭代,并将每个块的百分比相加,意思是 - ((number_of_ones)/240)*100。 结果应注入新的 numpy 表(5X20),因为每个单元格代表原始表的(4X60)。 目前,我正在使用 2 个嵌套的 for 循环,但这需要时间而不是最佳实践。
final_seg = []
for i in range(0, 20, 4):
for j in range(0, 1200, 60):
# slice segment from table
data = big_table[i:i + 4, j:j + 60]
n_zeros = np.count_nonzero(data == 1)
final_seg.append((n_zeros/240) * 100)
return final_seg
numpy 命令的等价物是什么?
【问题讨论】: