numpy中axis轴问题记录小结
在NumPy中,数组可以有多个维度(或轴)。每个轴代表数据的一个方向。对于一个n维数组,它有n个轴,这些轴是从0开始编号的:
axis=0表示第一个维度(最外层)axis=1表示第二个维度- 以此类推...
轴的概念
当你对一个数组进行操作时(例如求和、平均值等),你可以指定沿着哪个轴进行操作。如果你不指定轴,则操作会应用于整个数组的所有元素。
解释“设axis=i, 则numpy沿着第i个下标变化的方向进行操作”
这句话的意思是说,当你设置axis=i时,NumPy会在第i个维度上进行操作,即沿着该维度的变化方向进行操作。换句话说,NumPy会对该维度上的所有元素执行指定的操作,而其他维度保持不变。
具体例子说明
三维数组为例:
arr = np.array([[[ 0, 1],
[ 2, 3],
[ 4, 5],
[ 6, 7]],
[[ 8, 9],
[10, 11],
[12, 13],
[14, 15]]])这个数组的形状是 (2, 4, 2),表示它有两层(第一维度),每层有四行(第二维度),每行有两个元素(第三维度)。
不同轴的操作
axis=0:沿着最外层维度(第一维度)进行操作。
- 这意味着我们会将两个子数组(页)对应位置的值相加。
- 结果是一个形状为
(4, 2)的数组:
array([[ 8, 10],
[12, 14],
[16, 18],
[20, 22]])axis=1:沿着中间维度(第二维度)进行操作。
- 这意味着我们会将每一层内每一列的值相加。
- 结果是一个形状为
(2, 2)的数组:
array([[12, 16],
[44, 48]])axis=2:沿着最内层维度(第三维度)进行操作。
- 这意味着我们会将每一层内每一个小数组内的值相加。
- 结果是一个形状为
(2, 4)的数组:
array([[ 1, 5, 9, 13],
[17, 21, 25, 29]])总结
- axis=0:沿着第一个维度(最外层)进行操作,即对每一列的元素进行操作。
- axis=1:沿着第二个维度(中间层)进行操作,即对每一行的元素进行操作。
- axis=2:沿着第三个维度(最内层)进行操作,即对每个小数组内的元素进行操作。
关键点:当你设置axis=i时,NumPy会沿着第i个维度进行操作,这意味着在这个维度上的所有元素会被聚合在一起进行操作(如求和、平均等),而其他维度保持不变。这适用于任何维度的数组,不仅仅是二维数组。通过这种方式,你可以灵活地控制数据如何被处理和聚合。
到此这篇关于numpy中axis轴问题记录小结的文章就介绍到这了,更多相关numpy中axis轴内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Pyecharts 动态地图 geo()和map()的安装与用法详解
这篇文章主要介绍了Pyecharts 动态地图 geo()和map()的安装与用法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-03-03
Python split() 函数拆分字符串将字符串转化为列的方法
今天小编就为大家分享一篇Python split() 函数拆分字符串将字符串转化为列的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-07-07
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
问题描述:PyQt 环境正常,可以使用 Windows 的 虚拟 DOS 正常运行,但在 Sublime Text 2 下使用 Ctrl + B 运行后,界面不显示,但查看任务管理器,有 python.exe 进程。2014-06-06
Python使用pytest高效编写和管理单元测试的完整指南
在 Python 开发生态中,测试的重要性不言而喻,对于初学者来说,pytest 最直观的优势在于代码量的减少,下面小编就和大家详细讲讲它的具体使用吧2026-01-01


最新评论