numpy 学习汇总40- 修改数组维度( 初步学习 tcy)
发布日期:2021-06-29 14:47:52 浏览次数:3 分类:技术文章

本文共 2010 字,大约阅读时间需要 6 分钟。

修改数组维度  2018/11/29    ===================================================================维度                       描述broadcast          产生模仿广播的对象broadcast_to       将数组广播到新形状expand_dims        扩展数组的形状squeeze            从数组的形状中删除一维条目    ===================================================================1.np.broadcast 用于模仿广播的对象,    #它返回一个对象,该对象封装了将一个数组广播到另一个数组的结果。    #该函数使用两个数组作为输入参数,如下实例:    # 实例1x = np.array([[1], [2], [3]])y = np.array([4, 5, 6])    b = np.broadcast(x,y)# 对 y 广播 xr,c = b.iters        #拥有 iterator 属性list(r),list(c)      # ([1, 1, 1, 2, 2, 2, 3, 3, 3], [4, 5, 6, 4, 5, 6, 4, 5, 6])b.shape              #(3, 3)    b = np.broadcast(x,y)c = np.empty(b.shape)c.flat = [u + v for (u,v) in b]c#c=x+y    # array([[5., 6., 7.],#            [6., 7., 8.],#            [7., 8., 9.]])=================================================================2.numpy.broadcast_to(array, shape, subok) #将数组广播到新形状。# 原始数组上返回只读视图通常不连续。 如新形状不符合广播规则会抛出ValueError。    a = np.arange(4).reshape(1,4)#array([[0, 1, 2, 3]])np.broadcast_to(a,(4,4))    # array([[0, 1, 2, 3],#            [0, 1, 2, 3],#            [0, 1, 2, 3],#            [0, 1, 2, 3]])=================================================================3.numpy.expand_dims (arr, axis)#在指定位置插入新轴来扩展数组形状# 参数说明:axis:新轴插入的位置    x = np.array(([1,2],[3,4]))    # array([[1, 2],#            [3, 4]])    y = np.expand_dims(x, axis = 0)    # array([[[1, 2],#             [3, 4]]])    x.shape, y.shape#((2, 2), (1, 2, 2))    y = np.expand_dims(x, axis = 1)# 在位置 1 插入轴# array([[[1, 2]],#           [[3, 4]]])    x.ndim,y.ndim      #(2, 3)x.shape, y.shape#((2, 2), (2, 1, 2))==================================================================4.numpy.squeeze(arr, axis) 从给定数组的形状中删除一维的条目# 参数说明:axis:整数或整数元组,用于选择形状中一维条目的子集    x=np.array([[[1, 2]], [[3, 4]]])y = np.squeeze(x,1)    # array([[1, 2],#            [3, 4]])    x=np.array([[[1, 2],[3, 4]]])y = np.squeeze(x)    # array([[1, 2],#            [3, 4]])==================================================================

转载地址:https://chunyou.blog.csdn.net/article/details/84642588 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:numpy 学习汇总41 - 数组拆分分割( 初步学习 tcy)
下一篇:numpy 学习汇总39- 翻转数组( 初步学习 tcy)

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月30日 11时23分28秒