python高维数组的提取

python在TensorFlow搭建的环境下,所有数据的提取和Matlab的形式一致。
由于之前很少研究高维情况,第一次遇到三维数据的提取,出现一些小困惑。
下面是自己对于这方面的理解

import numpy as np

a = np.arange(60).reshape(3,4,5)

b1 = a[0::1,:]

print(a)

print(b2)

从算例的结果中可以发现:
一:三维数据的展示和维度表示关系:
1: 维度表示信息的(n1, n2, n3)从前往后表示高维数据的“[]”的从外往里,很明显,最后的(n2, n3)表示最里层的矩阵为n2行n3列,外层的n1表示有多少个这样的矩阵。
二:重点解释 “::” 的含义
1:首先,该符号可解释为,设置等差数列中的公差,即
::a 表示第1个元素开始(对应第0个维度),每隔a个元素抽取一次数据
2:c::b则表示初始元素维度为c,公差为b
3.1: 还有一点困惑的地方为:
三维数组中,出现形如[::d, :]
的数据信息提取,它的具体解释为,第一个维度中以 ::d 进行数据的提取,剩下两个维度则不发生改变。以三维数组为例,是提取第几个矩阵的信息
3.2 若形如[:,::d] 等价于[:,::d,:]
即在第二个维度中以 ::d 的形式进行数据提取,以三维数组为例,是提取每个矩阵行的信息
3.3 若形如[:,:,::d]
即在第三个维度中以 ::d 的形式进行数据提取,以三维数组为例,是提取每个矩阵列的信息

具体示例和结果大家可自己进行并体验

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值