今天做数据处理时,遇到了从三维数组中批量加入二维数组的需求。其中三维数组在深度学习的特征数据处理时经常会使用到,所以读者有必要对该小知识点做到清楚了解并掌握。现对三维数组中的元素位置结合代码做详细归纳总结,方便日后查阅和为网友答疑!

图示效果图:

直接贴代码:

def test3D():

import numpy as np

data_array = np.zeros((3, 5, 6), dtype=np.int)

data_array[1, 2, 2] = 1

print(data_array)

介绍:通过np.zeros创建一个3行5列6个通道的三维数组,并给第二个通道的第一行第二列赋值1.

运行结果图:

分析:有运行结果可知,创建了六个通道,在深度学习中这六个通道相当于六个Feature Map,对应结果图中的六列。

再向外看一层,共有三个块,每个块代表这个通道的第几行数据。

每个块里有五行数据,每一行代表每个通道的第几列数据

所以,代码中的赋值语句: data_array[1, 2, 2] = 1

表示为第2个通道,下标从0开始,所以在图中位置为第三列;第1行第2列,下标从0开始,所以图中表示第二个块的第三行;即为图中所示位置。

补充:三维数组的求和

多维数组的轴(axis=)是和该数组的size(或者shape)的元素是相对应的;

>>> np.random.seed(123)

>>> X = np.random.randint(0, 5, [3, 2, 2])

>>> print(X)

[[[5 2]

[4 2]]

[[1 3]

[2 3]]

[[1 1]

[0 1]]]

>>> X.sum(axis=0)

array([[7, 6],

[6, 6]])

>>> X.sum(axis=1)

array([[9, 4],

[3, 6],

[1, 2]])

>>> X.sum(axis=2)

array([[7, 6],

[4, 5],

[2, 1]])

如果将三维数组的每一个二维看做一个平面(plane,X[0, :, :], X[1, :, :], X[2, :, :]),三维数组即是这些二维平面层叠(stacked)出来的结果。则(axis=0)表示全部平面上的对应位置,(axis=1),每一个平面的每一列,(axis=2),每一个平面的每一行。

以上这篇numpy中三维数组中加入元素后的位置详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

python多维数组添加元素_numpy中三维数组中加入元素后的位置详解相关推荐

  1. C语言错误c2063,请教C语言中关于将二维数组复制到一个三维数组的问题

    请教C语言中关于将二维数组复制到一个三维数组的问题 小白正在填写一段代码,是有点类似与俄罗斯方块的一段游戏代码,代码如下 要求在增加参数,变量和函数的情况下完成此代码,只能填写// write app ...

  2. python定义三维数组手机端_三维数组python

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我有一个三维数组temprsubset我取了两个维度的平均值. 代码:f=mfd ...

  3. 1.numpy中三维数组的理解

    numpy中三维数组的理解 三维数组图形--立方体 图片中的三维数组 RNN中序列数据的三维数组 迭代数据中的三维数组 三维数组图形–立方体 我们在做图像处理,RNN序列数据,迭代数据的时候会遇到三维 ...

  4. python 读取图片转换为一维向量_对Python中一维向量和一维向量转置相乘的方法详解...

    对Python中一维向量和一维向量转置相乘的方法详解 在Python中有时会碰到需要一个一维列向量(n*1)与另一个一维列向量(n*1)的转置(1*n)相乘,得到一个n*n的矩阵的情况.但是在pyth ...

  5. python反向缩进_在Pycharm中对代码进行注释和缩进的方法详解

    在Pycharm中对代码进行注释和缩进的方法详解 一.注释 1. #单行注释 2. """ 多行注释 """ 3. pycharm多行注释快 ...

  6. python2.7除法_对python中的float除法和整除法的实例详解

    从python2.2开始,便有两种除法运算符:"/"."//".两者最大区别在: python2.2前的版本和python2.2以后3.0以前的版本的默认情况下 ...

  7. python中文意思k-对python中的*args与**kwgs的含义与作用详解

    在定义函数的时候参数通常会使用 *args与**kwgs,形参与实参的区别不再赘述,我们来解释一下这两个的作用. *args是非关键字参数,用于元组,**kw是关键字参数 例如下面的代码 def fo ...

  8. python中怎么计数_浅谈python中统计计数的几种方法和Counter详解

    1) 使用字典dict() 循环遍历出一个可迭代对象中的元素,如果字典没有该元素,那么就让该元素作为字典的键,并将该键赋值为1,如果存在就将该元素对应的值加1. lists = ['a','a','b ...

  9. python实现单例模式的几种方式_基于Python中单例模式的几种实现方式及优化详解...

    单例模式 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在.当你希望在整个系统中,某个类只能出现一个实例时,单例对象就能派上用场. ...

最新文章

  1. 在Ubuntu 16.04.6 LTS上升级python 3.5到3.7.3实录
  2. 修改Ubuntu和XP双系统时的默认启动系统
  3. PHP-Wakeup魔术漏洞骚操作
  4. 项目管理理论与实践(1)——企业项目管理介绍
  5. 30分钟回顾AI数学基础知识(一)
  6. Linux基金会亚太区与开源中国达成战略合作 共同推动中国开源人才培养
  7. 如何将自己的数据转换为Pascal voc2017数据集标注格式
  8. 金山云肖江:5G 驱动智慧人居新发展
  9. opencv提供的带参数例程
  10. CACHE的一些名词术语
  11. 02333自考软件工程知识点总结、考点串讲、考前复习
  12. 达梦数据库工程师培训实战教程(主备集群、读写分离、共享集群)
  13. 误入 GitHub 游戏区,意外地收获颇丰
  14. MySQL 手动配置环境变量(详细)
  15. IPv6、特殊常用的IP地址
  16. Python量策风指标
  17. 实探java对象的内存布局
  18. 阿里 c语言研发笔试题,阿里巴巴集团2014校园招聘笔试题
  19. 经典文献阅读之--Cam2BEV
  20. 开启xmp1还是2_玩机鸭x:手机开启“强制进行GPU渲染”功能对手机有什么影响?...

热门文章

  1. [解决方案]验证码无法显示
  2. 【动态规划】XMU 1028 Game Boy Advance
  3. TDirectory.GetParent获取指定目录的父目录
  4. C# 反射/映射学习
  5. 寄存器之通用寄存器(一)
  6. 一次新生代民工工友切磋经历
  7. windows10系统电脑点击睡眠没反应怎么办?
  8. ai跟随路径_AI机器人掌勺 马桥豆腐干飘香,长三角文博会上的这些“马桥元素”大放异彩...
  9. c++删除数组中重复元素_C / C ++中的数组
  10. java 面试常问问题