对数据进行操作时,经常需要在横轴方向或者数轴方向对数据进行操作,这时需要设定参数axis的值:

  • axis = 0 代表对横轴操作,也就是第0轴;
  • axis = 1 代表对纵轴操作,也就是第1轴;

numpy库中横轴、纵轴 axis 参数实例详解:

  1. In [1]: import numpy as np
  2. #生成一个3行4列的数组
  3. In [2]: a = np.arange(12).reshape(3,4)
  4. In [3]: a
  5. Out[3]:
  6. array([[ 0, 1, 2, 3],
  7. [ 4, 5, 6, 7],
  8. [ 8, 9, 10, 11]])
  9. #axis= 0 对a的横轴进行操作,在运算的过程中其运算的方向表现为纵向运算
  10. In [4]: a.sum(axis = 0)
  11. Out[4]: array([12, 15, 18, 21])
  12. #axis= 1 对a的纵轴进行操作,在运算的过程中其运算的方向表现为横向运算
  13. In [5]: a.sum(axis = 1)
  14. Out[5]: array([ 6, 22, 38])

pandas库DataFrame中横轴、纵轴 axis 参数实例详解:

  1. In [8]: b = pd.DataFrame(np.arange(24).reshape(4,6))
  2. In [9]: b
  3. Out[9]:
  4. 0 1 2 3 4 5
  5. 0 0 1 2 3 4 5
  6. 1 6 7 8 9 10 11
  7. 2 12 13 14 15 16 17
  8. 3 18 19 20 21 22 23
  9. #axis= 0 对b的横轴进行操作,在运算的过程中其运算的方向表现为纵向运算
  10. In [10]: b.sum(axis = 0)
  11. Out[10]:
  12. 0 36
  13. 1 40
  14. 2 44
  15. 3 48
  16. 4 52
  17. 5 56
  18. dtype: int64
  19. #axis= 1 对b的横轴进行操作,在运算的过程中其运算的方向表现为纵向运算
  20. In [11]: b.sum(axis = 1)
  21. Out[11]:
  22. 0 15
  23. 1 51
  24. 2 87
  25. 3 123
  26. dtype: int64

pandas库panel中axis 参数实例详解:

  1. In [18]: np.arange(24).reshape(2,3,4)
  2. Out[18]:
  3. array([[[ 0, 1, 2, 3],
  4. [ 4, 5, 6, 7],
  5. [ 8, 9, 10, 11]],
  6. [[12, 13, 14, 15],
  7. [16, 17, 18, 19],
  8. [20, 21, 22, 23]]])
  9. #生成面板数据
  10. In [19]: c = pd.Panel(np.arange(24).reshape(2,3,4))
  11. In [24]: c
  12. Out[24]:
  13. <class 'pandas.core.panel.Panel'>
  14. Dimensions: 2 (items) x 3 (major_axis) x 4 (minor_axis)
  15. Items axis: 0 to 1
  16. Major_axis axis: 0 to 2
  17. Minor_axis axis: 0 to 3
  18. #对Items axis轴的数据进行操作,也就是panel里面的0轴:
  19. In [20]: c.sum(axis = 0)
  20. Out[20]:
  21. 0 1 2 3
  22. 0 12 14 16 18
  23. 1 20 22 24 26
  24. 2 28 30 32 34
  25. Major_axis axis轴的数据进行操作
  26. In [21]: c.sum(axis = 1)
  27. Out[21]:
  28. 0 1
  29. 0 12 48
  30. 1 15 51
  31. 2 18 54
  32. 3 21 57
  33. Minor_axis axis轴的数据进行操作
  34. In [22]: c.sum(axis = 2)
  35. Out[22]:
  36. 0 1
  37. 0 6 54
  38. 1 22 70
  39. 2 38 86

如果是2维数组,先横轴后纵轴;如果是3维数组,先最外层,然后一层一层按照先横轴再纵轴的逻辑进行匹配轴。

【python】详解numpy库与pandas库axis=0,axis= 1轴的用法的更多相关文章

  1. 使用第三方库连接MySql数据库:PyMysql库和Pandas库

    使用PyMysql库和Pandas库链接Mysql 1 系统环境 系统版本:Win10 64位 Mysql版本: 8.0.15 MySQL Community Server - GPL pymysql ...

  2. [转载]python 详解re模块

    原文地址:python 详解re模块作者:Rocky 正则表达式的元字符有. ^ $ * ? { [ ] | ( ) .表示任意字符 []用来匹配一个指定的字符类别,所谓的字符类别就是你想匹配的一个字 ...

  3. 33 Python 详解命令解析 - argparse--更加详细--转载

    https://blog.csdn.net/lis_12/article/details/54618868 Python 详解命令行解析 - argparse Python 详解命令行解析 - arg ...

  4. Python之文件读写(csv文件,CSV库,Pandas库)

    前言 一.Python文件读取 二.读取CSV文件 一.Python文件读取 1. open函数是内置函数之with操作 - 关于路径设置的问题斜杠设置成D:\\文件夹\\文件或是D:/文件夹/文件 ...

  5. 转 深入解析:一主多备DG环境,failover的实现过程详解 以及 11g 容灾库可以在线添加tempfile. 以及 11g 容灾库可以在线添加logile.

    https://yq.aliyun.com/articles/229600 核心,就是11g通过datafille_scn 号来追日志,而不是日志序列号来追日志. 加快standby switchov ...

  6. 详解numpy的argmax

    从最简单的例子出发 假定现在有一个数组a = [3, 1, 2, 4, 6, 1]现在要算数组a中最大数的索引是多少.这个问题对于刚学编程的同学就能解决.最直接的思路,先假定第0个数最大,然后拿这个和 ...

  7. Python——详解collections工具库

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天为大家介绍Python当中一个很好用也是很基础的工具库,叫做collections. collection在英文当中有容器的意思,所以顾 ...

  8. 详解EBS接口开发之库事务处理带提前发运通知(ASN)采购接收入库-补充

     A)   Via ROI Create a ASN [ship,ship]  for a quantity =3 on STANDARD PURCHASE ORDER Create  via R ...

  9. 122、详解Glide图片加载库常用方法

    转载:http://blog.csdn.net/android_xiong_st/article/details/53129256 Glide加载网络图片, 显示的还是以前的图片! (最全解决方案!) ...

随机推荐

  1. mms

    Quartz2D 二维绘图引擎(绘制图形|绘制文字|读取生成 PDF|裁剪图片|自定义 UI 控件) 继承 UIView 重写 drawRect.(viewDidLoad->viewWillAp ...

  2. 负margin使用注意的一个问题

    在项目实力中经经常使用到负margin 如: <div id="test"> <ul> <li>子元素1</li> <li&g ...

  3. 数据库操作语句大全(sql)

    一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备 ...

  4. bzoj3175: [Tjoi2013]攻击装置&&4808: 马

    终于知道为啥网络流这么受欢迎了. 其实就是构个图模板一下的事儿,比较好打是吧. 然后这题网络流黑白染色(其实感觉上匈牙利更加直接好想啊,但是实际上黑白染色给人感觉就是二分图) st连白而ed连黑,流量 ...

  5. Quartz在.Net网站中的使用方法(附Demo)

    现在做一个B/S项目需要用到计划任务,本来想自定写一个的,写了几句,突然想看看网上有没有现成可以用的.结果在苦寻之下找到了Quartz这个组件.看过之后感觉还不错.决定用它实现计划任务了.再找找看有没 ...

  6. bzoj 5127 数据校验

    题目大意: 一个数列a 对于 a 的一个区间 [l, r],若对于该区间 [l, r] 内的任意一个非空连续子区间,该子区间内出现过的数值在整数上值域连续,则称 [l, r]为合法区间 m次询问  每 ...

  7. QT Creater环境搭建

    需要的软件包: 1.qt-win-opensource-4.8.5-mingw.exe //Qt库 2.MinGW-gcc440_1.zip //QT编译器 3.qt-creator-opensour ...

  8. Android开发中常用的一些小技巧(转载)

    http://www.jb51.net/article/61135.htm Activity.startActivities() 常用于在应用程序中间启动其他的Activity. TextUtils. ...

  9. word文档在线预览解决方案

    花了一整天在网上翻关于 “word文档在线预览解决方案” 相关的资料,感觉实现难度比较大还是用PDF来解决好了.. 下面列一下比较好的参考资料吧 参考资料 前端实现在线预览pdf.word.xls.p ...

  10. canvas 文字转化为粒子

    var canvas = document.createElement('canvas'); var cxt = canvas.getContext('2d'); var W = canvas.wid ...