NPB*_*NPB 4 python indexing numpy
我试图将两个不同大小的数组的python/numpy索引联系起来,但我不能通过子程序将索引一从小数组传递到大数组.
例如,我有两个numpy数组:a1
和a2
.a1.shape = (240,33,258)
和a2.shape = (240,40,33,258)
.我在a1中找到索引并将这些索引与之相关联a2
.即.,index1 = numpy.where(a > n)
.我可以抓住我感兴趣的数据
dat1 = a1[index]
dat2 = a2[index[0],:,index[1],index[2]]
Run Code Online (Sandbox Code Playgroud)
结果数据形状为dat1.shape = (n)
和dat2.shape = (n, 40)
.为了加速程序,我想通过一个子程序传递索引,但我不能通过[index[0],:,index[1],index[2]]
一个子程序,因为我不能传递冒号':'.
我相信我的解决方案是在子程序中将等效数字传递给':',但我还没有找到答案.
有帮助吗?
非常感谢你
你应该可以slice(None)
用来代表:
.如在
[index[0], slice(None), index[1], index[2]]
Run Code Online (Sandbox Code Playgroud)