我有一个带有x和y坐标的地图数组,每个(x,y)坐标与一个数字相关。我收集了一堆具有相同尺寸的这些地图,并将它们组织成一个3D矩阵。
现在,我希望一次一个地调用x,y坐标中的所有数字。
我认为这就像
for t in Map_Collection:
for x, y in Map_Collection[:,:,t]
print Map_Collection[x,y]
#hoping it would give a large list of single numbers
这没有给我带来多个错误,我无法弄清楚原因。但我认为我的整个逻辑可能都没有了。
为了澄清我希望能够为每个时间戳找到地图的每个坐标的每个数字,并在我已经拥有的单独功能中使用它。
请帮忙。
答案 0 :(得分:0)
让我们开始简单:
map=np.arange(2*3*4).reshape(2,3,4)
for t in map:
print t
print
产生
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
[[12 13 14 15]
[16 17 18 19]
[20 21 22 23]]
也就是说,每个t
都是row
的{{1}}(第一维)。
您尝试使用map
作为最后一个索引。为此,您需要生成一系列数字,例如t
[0,1,2...]
将打印for i in range(map.shape[-1]):
for j in range(map.shape[1]):
for k in range(map.shape[0]):
print map[k,j,i]
中的所有条目。它不漂亮,但它给你一个起点。您可能需要重新排序迭代器。
这是一种使用'行'来简化条目的方法:
map
按照for t in map:
for x in t:
for y in x:
print y
生成它们的顺序(以及它们在arange
中的存储顺序)给出值。