转载:https://blog.csdn.net/yaoqi_isee/article/details/77714570

1.理解

numpy当中axis的值表示的是这个多维数组维度的下标,比如有一个二维数组a,a的shape是(5,6),也就是说a有5行6列,axis=0表示的就是[5,6]中的第一维,也就是行,axis=1表示的是[5,6]中的第二个维度,也就是列。

通常numpy里面的一些降维操作(aggregate functions)需要我们指定对应的维度,比如sum函数表示对哪个维度求和,max表示对哪个维度求最大值。通常当我们在这些函数里面指定了axis=n时,那么函数输出的数组当中,原来的第n维就被消除了,比如下面的例子:

//其实不一定是消除,反正就是那个维发生了变化,增加了或者归为1了。

# 创建一个矩阵a,a的维度为2行3列
>>> a = np.array([[1,2,3],[4,5,6]])
>>> print a
[[1 2 3]
[4 5 6]]
>>> print a.shape
(2, 3) # b表示沿着axis=0(行)这条轴取max,得到的结果就是把输入数组的'行'给消除了,2行变1行
>>> b = a.max(axis=0)
>>> print b
[4 5 6]
>>> print b.shape
(3,) # c表示沿着axis=1(列)这条轴取max,得到的结果就是把输入数组的'列'给消除了,3列变1列
>>> c = a.max(axis=1)
>>> print c
[3 6]
>>> print c.shape
(2,)

2.例子

>>> a = np.array([[1, 1], [2, 2], [3, 3]])
>>> a
array([[1, 1],
[2, 2],
[3, 3]])
>>> np.insert(a, 1, 5)
array([1, 5, 1, 2, 2, 3, 3])
>>> np.insert(a, 1, 5, axis=1)
array([[1, 5, 1],
[2, 5, 2],
[3, 5, 3]])

在上例当中,插入时axis=1,即对列数进行变化,最终列数增加1,由原来的[3,2]变为[3,3] 。

如果axis=0的话,就是对行数进行改变。

>>> a = np.arange(6).reshape(2,3) + 10
>>> a
array([[10, 11, 12],
[13, 14, 15]])
>>> np.argmax(a)
5
>>> np.argmax(a, axis=0)
array([1, 1, 1])
>>> np.argmax(a, axis=1)
array([2, 2])

找出最值下标。

0行1列:

0:对列操作,结果为行

1:对行操作,结果为列

比如要对5000*10的矩阵求每行的最值下标,([5000,10],10变化,即列变化)那么axis=1.

Py中axis理解【转载】的更多相关文章

  1. 从 python 中 axis 参数直觉解释 到 CNN 中 BatchNorm 的工作方式(Keras代码示意)

    1. python 中 axis 参数直觉解释 网络上的解释很多,有的还带图带箭头.但在高维下是画不出什么箭头的.这里阐述了 axis 参数最简洁的解释. 假设我们有矩阵a, 它的shape是(4, ...

  2. [django]urls.py 中重定向

    Django 1.5 有时候需要对一个链接直接重定向,比如首页啥的重定向到一个内容页等等,在views.py 中可以设定,如果没有参数啥的在urls.py 中设定更加方面 from django.vi ...

  3. git在eclipse中的配置 转载

    git在eclipse中的配置 转载 一_安装EGIT插件 http://download.eclipse.org/egit/updates/ 或者使用Eclipse Marketplace,搜索EG ...

  4. (转)Python中如何理解if __name__ == '__main__'

    摘要 通俗的理解 __name__ == '__main__' :假如你叫李凯.py,在朋友眼中,你是李凯( __name__ == '李凯' ):在你自己眼中,你是你自己( __name__ == ...

  5. C#高级编程六十九天----DLR简介 .在.NET中使用DLR(转载) 我也来说说Dynamic

    DLR 一.近年来,在TIOBE公司每个月发布的编程语言排行榜中,C#总是能挤进前十名,而在最近十年来,C#总体上呈现上升的趋势.C#能取得这样的成绩,有很多因素,其中它在语言特性上的锐意进取让人印象 ...

  6. python调用py中rar的路径问题。

    1.python调用py,在py中的os.getcwd()获取的不是py的路径,可以通过os.path.split(os.path.realpath(__file__))[0]来获取py的路径. 2. ...

  7. Django 中 如何使用 settings.py 中的常量

    在用django 框架开发 python web 程序的时候 , 在模板页面经常会用到 settings.py 中设置的常量,比如MEDIA_URL, 我尝试过在模板页面用类似如下的方式 程序代码 { ...

  8. 配置python+mod_wsgi+apache 时 在浏览器中访问服务器时报错:Invalid HTTP_HOST header: 'XXXXX'. You may need to add u'XXXXX' to ALLOWED_HOSTS,在setting.py中添加‘*”无效的原因

    配置python+mod_wsgi+apache 时 在浏览器中访问服务器时报错:Invalid HTTP_HOST header: 'XXXXX'. You may need to add u'XX ...

  9. 不在models.py中的models

    概述 如何让你定义的model不在models.py中 在app的models目录中的models 你新建一个app后这个models.py就会自动建立,里面只有几行代码.那么如果是一个中大型项目,每 ...

随机推荐

  1. 壁虎书2 End-to-End Machine Learning Project

    the main steps: 1. look at the big picture 2. get the data 3. discover and visualize the data to gai ...

  2. Hibernate的配置文件,hibernate.cfg.xml

    单纯的只针对持久层框架 Hibernate 配置文件的一些总结 一.Hibernate底层原理 1. Hibernate保存原理 目的:把domain对象保存到数据库的表,形成一条记录. sql: i ...

  3. RabbitMQ 内存控制 硬盘控制

    RabbitMQ服务器在启动时以及abbitmqctl set_vm_memory_high_watermark fraction 执行时,会检查计算机的RAM总大小. 默认情况下下, 当 Rabbi ...

  4. RabbitMQ消息可靠性

    那些情况会失败 网络问题有很多原因出发失败.防火墙也可能会中断Idle连接,网络失败不是很快确定的. 硬件和软件也会导致系统崩溃.客户端软件保持运行,而逻辑错误也可能会导致channel和connec ...

  5. day5:字典dict

    1, 判断是不是列表 li = ['lis3a', 'mary', 'lucy', 'hh', 'kk', 'gg', 'mm', 'oo', 'vv'] if type(li) == list: p ...

  6. centos7上安装nagios及增加监控服务器

    参考博客 http://blog.csdn.net/firstar521/article/details/52848393 当配置了linux.cfg和Windows.cfg文件,重启nagios后发 ...

  7. 直和 direct sum

    小结: 1.xy平面 与  直和 https://en.wikipedia.org/wiki/Direct_sum For example, the xy-plane, a two-dimension ...

  8. iOS-静态库,动态库,framework浅析(三)

    创建framework静态库 第一步,新建项目 新建项目.png 第二步,删除系统默认创建的[FMDB.h]和[FMDB.m]文件,导入需要打包的源文件. 导入源码后的工程.png 第三步,修改项目配 ...

  9. [dpdk] SDK编译-简单扼要版

    0. 前提: 环境是CentOS7,archlinux编译有问题,不知道却什么. 1. 解压: [root@dpdk dpdk]# tar Jxf dpdk-2.2.0.tar.xz 2. 设置环境变 ...

  10. base64简单使用

    加密: import base64 import random str ="aqwertyuiopasdfghjklzxcvbnm963.0852741,.;'" a = '人生苦 ...