Numpy攻略系列:高级索引机制

来源:互联网 发布:阿里云带宽费用 编辑:程序博客网 时间:2024/06/05 18:32

Numpy攻略系列:高级索引机制

       所谓高级索引就是不使用整数或者切片作为索引值,在这一节重点介绍三类高级索引:常规的高级索引,位置列表型高级索引,布尔型高级索引的一类。

       常规的高级索引

       给定一个矩阵,我们要求相关位置设置为特殊值,这里我们就假定设置为0,高级索引不用通过一一按位置修改元素值。

      

我们的任务将对角线上面元素置为0,


索引用了两个列表来代替了位置,实际上是c[list1[0],list2[0]],c[list1[1],list2[2]]……这个高级索引经常用在求解softmax的最大似然函数上面,可以参考Deep learning tutorials中的logistic regression中NLL求法

Task:将lena图像对角线上的值置零操作。

       步骤:将左上到右下的对角线数值置零:

                  lena[range(xmax),range(ymax)]=0

                  将左下到右上的对角线数值置零:

                  lena[range(xmax-1,-1,-1),range(ymax)]=0

       code:


       运行结果:




0 0
原创粉丝点击