numpy reshape函数_【numpy】改变ndarrary的形状

本文内容来自于numpy官方教程 Shape Manipulation 一章

要注意的是reshape不会改变数组本身形状,resize方法则会。

方法一、使用reshape函数或者使用ndarray的reshape方法(不会改变数组本身形状

numpy.reshape(a,newshape,order='C')

其中a是输入的数组,newshape是要输出的新形状,order='C'意思是用C语言风格(基本不会用到)

afb6ec9ba088f93fc6de0b2159705757.png
可以看到使用reshape后,数组a本身形状不变

288b63da3c003b09fb2960a96f7a5d0a.png
俩种方法等价

方法二、将数值赋值到shape属性中(会改变数组本身的形状

2d1fb1087fbf6d43ae20ef8928e102c5.png
直接改变数组属性,所以a的本身形状自然改变

方法三、使用resize函数或者使用ndarray的resize方法(会改变数组本身形状

例如:

b6a17db3c15c8b370c1bcb3f38d6c13e.png

等价于np.resize(a,(2,2))

fe62cce2ddc090e4d03a3dca7f93ce88.png

此外,使用flatten方法和ravel方法可以使得数组展平都会改变数组本身。然而,flatten是深copy,ravel是浅copy(或者说view)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值