Numpy扩充矩阵维度和删除维度的实现示例

  介绍

这篇文章主要介绍了Numpy扩充矩阵维度和删除维度的实现示例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

在操作矩阵的时候,不同的接口对于矩阵的输入维度要求不同,输入可能为一维,二维,三维等等。下面介绍一下使用Numpy进行矩阵维度变更的相关方法。主要包括以下几种:

1, np.newaxis扩充矩阵维度

2, np.expand_dims扩充矩阵维度

3, np.squeeze删除矩阵中维度大小为1的维度

np.newaxis, np。expand_dims扩充矩阵维度:

import  numpy  as  np   ,   时间=x  np.arange (8) .reshape (2, 4)   打印(x.shape)   ,   #,添加第0维,输出shape →, (1, 2, 4)   x1 =, x [np.newaxis,:]   打印(x1.shape)   ,   #,添加第1维,,输出shape →, (2, 1, 4)   时间=x2  np.expand_dims (x,,轴=1)   打印(x2.shape)

输出结果:

(2、4)
(1、2、4)
(2, 1, 4)

np。压降低矩阵维度:

“““   ,squeeze 函数:从数组的形状中删除单维度条目,即把形状中为1的维度去掉   ,用法:numpy.squeeze (=, axis 没有一个)   1)才能表示输入的数组;   2)轴才能用于指定需要删除的维度,但是指定的维度必须为单维度,否则将会报的错;   3)轴的才能取值可为None 或,int 或,tuple  of 整数,,可选。若轴为空,则删除所有单维度的条目;   4)才能返回值:数组   5),才能不会修改原数组;   “““   import  numpy  as  np    打印(“#“,*,40岁,“原始数据,,,“#”;,*,40)   x =, np.arange (10) .reshape (1,, 1,,,, 1)   打印(x.shape)   打印(x)   ,   打印(“#“,*,40岁,“去掉轴=0这个维度,,,“#”,*,40)   时间=x_squeeze_0  np.squeeze (x,,轴=0)   打印(x_squeeze_0.shape, x_squeeze_0)   ,   打印(“#“,*,40岁,“去掉轴=3这个维度,,,“#”,*,40)   时间=x_squeeze_3  np.squeeze (x,,轴=3)   打印(x_squeeze_3.shape, x_squeeze_3)   ,   打印(“#“,*,40岁,“去掉=0,轴,轴=1这两个维度,,,“#”,*,40)   时间=x_squeeze_0_1  np.squeeze (x,,轴=(0,1))   打印(x_squeeze_0_1.shape, x_squeeze_0_1)   ,   打印(“#“,*,40岁,“去掉所有1维的维度,,,“#”,*,40)   时间=x_squeeze  np.squeeze (x)   打印(x_squeeze.shape, x_squeeze)   ,   打印(“#“,*,40岁,“去掉不是1维的维度,抛异常“,,“#”;,*,40)   试一试:=,,x_squeeze  np.squeeze (x),轴=2)   ,打印(x_squeeze.shape, x_squeeze)   except  Exception  as  e:   ,打印(e)

输出结果:

# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #原始数据# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
(1, 1, 1)
[[[[0]
,,[1]
,,[2]
,,[3]
,,[4]
,,[5]
,,[6]
,,[7]
,,[8]
,,[9]]]]
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #去掉轴=0这个维度# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
(1, 1) [[[0]
,[1]
,[2]
,[3]
,[4]
,[5]
,[6]
,[7]
,[8]
,[9]]]
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #去掉轴=3这个维度# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
(1 1 10) [[[0 1 2 3 4 5 6 7 8 9]]]
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #去掉轴=0,轴=1这两个维度# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
(10, 1) [[0]
,
[1], [2]
,
[3], [4]
,
[5], [6]
,
[7], [8]
, [9]]
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #去掉所有1维的维度# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
(10) [0 1 2 3 4 5 6 7 8 9]
# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #去掉不是1维的维度,抛异常# # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
不能选择一个轴挤出的规模不等于>感谢你能够认真阅读完这篇文章,希望小编分享的“Numpy扩充矩阵维度和删除维度的实现示例”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

Numpy扩充矩阵维度和删除维度的实现示例