【发布时间】:2023-03-04 13:03:01
【问题描述】:
我有一个如下形式的列表(类似于方阵):
a = [[1,2,3,4,5,6],
[5,6,7,8,3,4],
[9,8,4,6,2,1],
[3,4,5,1,4,5],
[4,3,7,8,1,4],
[3,2,5,6,1,8]]
我想获得一个新的列表列表,其中 4 个相邻值形成一个正方形的平均值,即 new_list[0][0] 将是 [1+2+5+6] 的平均值,new_list[0][1] 将是 [3+4+7+8] 的平均值, new_list[0][2] 是 [5+6+3+4] 的平均值,以此类推。
我怎样才能以 Python 的方式实现这一点?
非常感谢您的任何建议!
已编辑:
感谢您指出这个答案之前已经回答过 - 我的问题似乎不够清楚。无论如何,改编自answer to this question,我得到了解决方案:
a = np.array(a)
a_new = np.zeros((3, 3))
for i in range(3):
for j in range(3):
a_new[i][j] = np.mean(a[i*2:2+i*2, j*2:2+j*2])
【问题讨论】: