我试图将两个不同大小的数组的
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]]
结果数据形状为dat1.shape =(n)和dat2.shape =(n,40).为了加速程序,我想通过一个子程序传递索引,但我不能通过子程序传递[index [0],:,index [1],index [2]],因为我无法传递冒号’:’ .
我相信我的解决方案是在子程序中将等效数字传递给’:’,但我还没有找到答案.
有帮助吗?
非常感谢你
最佳答案 您应该能够使用slice(None)来表示:.如在
[index[0], slice(None), index[1], index[2]]