主页 > 知识库 > 给numpy.array增加维度的超简单方法

给numpy.array增加维度的超简单方法

热门标签:佛山400电话办理 所得系统电梯怎样主板设置外呼 儋州电话机器人 北京电销外呼系统加盟 朝阳手机外呼系统 小苏云呼电话机器人 北瀚ai电销机器人官网手机版 市场上的电销机器人 地图标注面积

输入:

import numpy as np 
a = np.array([1, 2, 3])
print(a) 

输出结果:

array([1, 2, 3])

输入:

print(a[None])

输出结果:

array([[1, 2, 3]])

输入:

print(a[:,None])

输出结果:

array([[1],               
       [2],               
       [3]])     

numpy数组的维度增减方法

使用np.expand_dims()为数组增加指定的轴,np.squeeze()将数组中的轴进行压缩减小维度。

1.增加numpy array的维度

在操作数组情况下,需要按照某个轴将不同数组的维度对齐,这时候需要为数组添加维度(特别是将二维数组变成高维张量的情况下)。

numpy提供了expand_dims()函数来为数组增加维度:

import numpy as np
a = np.array([[1,2],[3,4]])
a.shape
print(a)
>>>
"""
(2L, 2L)
[[1 2]
 [3 4]]
"""
# 如果需要在数组上增加维度,输入需要增添维度的轴即可,注意index从零还是
a_add_dimension = np.expand_dims(a,axis=0)
a_add_dimension.shape
>>> (1L, 2L, 2L)

a_add_dimension2 = np.expand_dims(a,axis=-1)
a_add_dimension2.shape
>>> (2L, 2L, 1L)

a_add_dimension3 = np.expand_dims(a,axis=1)
a_add_dimension3.shape
>>> (2L, 1L, 2L)

2.压缩维度移除轴

在数组中会存在很多轴只有1维的情况,可以使用squeeze函数来压缩冗余维度

b = np.array([[[[5],[6]],[[7],[8]]]])
b.shape
print(b)
>>>
"""
(1L, 2L, 2L, 1L)
array([[[[5],
         [6]],

        [[7],
         [8]]]])
"""
b_squeeze = b.squeeze()
b_squeeze.shape
>>>(2L, 2L)   #默认压缩所有为1的维度

b_squeeze0 = b.squeeze(axis=0)   #调用array实例的方法
b_squeeze0.shape
>>>(2L, 2L, 1L)

b_squeeze3 = np.squeeze(b, axis=3)   #调用numpy的方法
b_squeeze3.shape
>>>(1L, 2L, 2L)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
  • numpy给array增加维度np.newaxis的实例
  • Numpy 改变数组维度的几种方法小结
  • numpy添加新的维度:newaxis的方法

标签:酒泉 定西 宁夏 云南 龙岩 商丘 江苏 金融催收

巨人网络通讯声明:本文标题《给numpy.array增加维度的超简单方法》,本文关键词  给,numpy.array,增加,维度,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《给numpy.array增加维度的超简单方法》相关的同类信息!
  • 本页收集关于给numpy.array增加维度的超简单方法的相关信息资讯供网民参考!
  • 推荐文章