Numpy数轴编号规则

2024-03-17 17:12
文章标签 规则 numpy 编号 数轴

本文主要是介绍Numpy数轴编号规则,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当在NumPy数组中增加维度时,轴号的分配遵循一个明确的规则:每个新添加的维度都会作为一个新的轴被添加到数组形状的最前面,这意味着新轴成为轴0,原有的所有轴号随之增加。

精准描述:

对于一个已存在的N维数组,其轴号从0到N-1。当增加一个新的维度时,新的轴被添加到形状的最前面,成为新的轴0,而原有的每个轴号都会加1,变成1到N。

详细举例:

假设我们有以下几种情况的数组,来说明维度增加时轴号的变化:

从零维到一维
  • 初始状态:一个零维数组,无轴。

  • 增加维度:添加一个新维度,变为一维数组。

  • 结果:新的数组有一个轴,该轴是轴0。

从一维到二维
  • 初始状态:一个一维数组,有一个轴,是轴0。

    arr_1d = np.array([1, 2, 3]) # 形状为 (3,) 
  • 增加维度:通过某种操作(如np.newaxisnp.expand_dims)在最前面添加一个新的维度,变为二维数组。

    arr_2d = arr_1d[np.newaxis, :] # 或 np.expand_dims(arr_1d, axis=0) 
  • 结果:新的数组是二维的,形状为 (1, 3)。原来的唯一轴现在是轴1,新添加的维度成为轴0。

    arr_2d.shape == (1, 3) 
从二维到三维
  • 初始状态:一个二维数组,有两个轴,分别是轴0和轴1。

    rr_2d = np.array([[1, 2, 3], [4, 5, 6]]) # 形状为 (2, 3) 
  • 增加维度:在最前面添加一个新的维度,变为三维数组。

    arr_3d = np.expand_dims(arr_2d, axis=0) 
  • 结果:新的数组是三维的,形状为 (1, 2, 3)。原来的轴0和轴1现在分别变为轴1和轴2,新添加的维度成为轴0。

    arr_3d.shape == (1, 2, 3) 

      通过这些例子,可以看到,随着数组维度的增加,新添加的维度总是出现在形状描述的最前面,相应地,原有的所有轴号依次增加,以适应新的数组形状。

这篇关于Numpy数轴编号规则的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/819598

相关文章

hdu 3065 AC自动机 匹配串编号以及出现次数

题意: 仍旧是天朝语题。 Input 第一行,一个整数N(1<=N<=1000),表示病毒特征码的个数。 接下来N行,每行表示一个病毒特征码,特征码字符串长度在1—50之间,并且只包含“英文大写字符”。任意两个病毒特征码,不会完全相同。 在这之后一行,表示“万恶之源”网站源码,源码字符串长度在2000000之内。字符串中字符都是ASCII码可见字符(不包括回车)。

Adblock Plus官方规则Easylist China说明与反馈贴(2015.12.15)

-------------------------------特别说明--------------------------------------- 视频广告问题:因Adblock Plus的局限,存在以下现象,优酷、搜狐、17173黑屏并倒数;乐视、爱奇艺播放广告。因为这些视频网站的Flash播放器被植入了检测代码,而Adblock Plus无法修改播放器。 如需同时使用ads

关联规则(一)Apriori算法

此篇文章转自 http://blog.sina.com.cn/s/blog_6a17628d0100v83b.html 个人觉得比课本上讲的更通俗易懂! 1.  挖掘关联规则 1.1   什么是关联规则 一言蔽之,关联规则是形如X→Y的蕴涵式,表示通过X可以推导“得到”Y,其中X和Y分别称为关联规则的先导(antecedent或left-hand-side, LHS)和后

电子电气架构---私有总线通信和诊断规则

电子电气架构—私有总线通信和诊断规则 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节能减排。 无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事.而不是让内心的烦躁、

python科学计算:NumPy 线性代数与矩阵操作

1 NumPy 中的矩阵与数组 在 NumPy 中,矩阵实际上是一种特殊的二维数组,因此几乎所有数组的操作都可以应用到矩阵上。不过,矩阵运算与一般的数组运算存在一定的区别,尤其是在点积、乘法等操作中。 1.1 创建矩阵 矩阵可以通过 NumPy 的 array() 函数创建。矩阵的形状可以通过 shape 属性来访问。 import numpy as np# 创建一个 2x3 矩阵mat

探索Python的数学魔法:Numpy库的神秘力量

文章目录 探索Python的数学魔法:Numpy库的神秘力量背景:为什么选择Numpy?Numpy是什么?如何安装Numpy?五个简单的库函数使用方法场景应用常见Bug及解决方案总结 探索Python的数学魔法:Numpy库的神秘力量 背景:为什么选择Numpy? 在Python的世界中,数据处理和科学计算是不可或缺的一部分。但原生Python在处理大规模数据时可能会显

批量生成编号(A~Z+3位流水编号)

/*** 批量生成编号* @param num* @param warehouseId* @return*/public synchronized List<String> generatCodeList(int num,long warehouseId){MesRack rack = this.getCurrentRack(warehouseId);String oldRackCode;Lis

Numpy random.random()函数补充

np.random.random() np.random.random()的作用是生成指定形状的均匀分布的值为[0,1)的随机数 参数为size,也就是用于指定的形状大小 import numpy as npprint(np.random.random(size=(2, 2)))# [[0.19671797 0.85492315]# [0.99609539 0.66437246]]

Python中的单下划线和双下划线使用规则

引言 Python 遵循一些关键的命名规则,这些规则涉及到使用单个或双下划线。通过这些规则,你可以在应用程序接口(API)中区分可访问的和不可访问的标识符,编写适用于继承的稳健类,以及防止命名冲突等。 遵守这些规则,你的代码将显得更贴近 Python 的风格,并且在其他 Python 程序员看来更加统一。这项技能在你为其他开发者编写代码时尤为重要。 本文[1]将带你了解: 基于使用下划线

【0324】Postgres内核 Shared Buffer Access Rules (共享缓冲区访问规则)说明

0. 章节内容 1. 共享磁盘缓冲区访问机制 (shared disk buffers) 共享磁盘缓冲区有两套独立的访问控制机制:引用计数(a/k/a pin 计数)和缓冲区内容锁。(实际上,还有第三级访问控制:在访问任何属于某个关系表的页面之前,必须持有该关系表的适当类型的锁。这里不讨论关系级锁。) Pins 在对缓冲区做任何操作之前,必须“对缓冲区pin”(即增加其引用计数, re