详解numpy.ndarray.reshape()函数的参数问题


Posted in Python onOctober 13, 2020

我们知道numpy.ndarray.reshape()是用来改变numpy数组的形状的,但是它的参数会有一些特殊的用法,这里我们进一步说明一下。代码如下:

import numpy as np

class Debug:
  def __init__(self):
    self.array1 = np.ones(6)

  def mainProgram(self):
    print("The value of array1 is: ")
    print(self.array1)
    print("The array2 is: ")
    array2 = self.array1.reshape(2, 3)
    print(array2)

if __name__ == '__main__':
  main = Debug()
  main.mainProgram()
"""
The value of array1 is: 
[1. 1. 1. 1. 1. 1.]
The array2 is: 
[[1. 1. 1.]
 [1. 1. 1.]]
"""

这里我们看到我们将一个长度为6的一维数组变成了一个尺寸为(2, 3)的二维数组,这里的2代表2行,对应y轴,3代表3列,对应x轴。

然而有时候我们会在reshape中使用到-1这个参数,当使用这个参数时,会将数组重新塑形变得十分简单。代码如下:

class Debug:
  def __init__(self):
    self.array1 = np.ones(6)

  def mainProgram(self):
    print("The value of array1 is: ")
    print(self.array1)
    print("The array2 is: ")
    array2 = self.array1.reshape(-1, 3)
    print(array2)


if __name__ == '__main__':
  main = Debug()
  main.mainProgram()
"""
The value of array1 is: 
[1. 1. 1. 1. 1. 1.]
The array2 is: 
[[1. 1. 1.]
 [1. 1. 1.]]
"""

我们可以看到当我们将reshape的第一个参数变为-1时,我们仍旧获得了一个尺寸为(2, 3)的数组,其实在这里,-1代表的意思为6 / 3 =2,其中6是被塑形一维数组的长度,3是我们指定的二维数组一个方向的维度。这样的好处就是当数据量比较大时,我们在二维数组重新塑形时只需要指定一个维度上的尺寸,另一个维度上的尺寸python会自动为我们计算。

到此这篇关于详解numpy.ndarray.reshape()函数的参数问题的文章就介绍到这了,更多相关numpy.ndarray.reshape()函数参数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
对Python新手编程过程中如何规避一些常见问题的建议
Apr 01 Python
python 定时任务去检测服务器端口是否通的实例
Jan 26 Python
Python for循环与range函数的使用详解
Mar 23 Python
pandas通过字典生成dataframe的方法步骤
Jul 23 Python
Python Numpy数组扩展repeat和tile使用实例解析
Dec 09 Python
Python实现微信好友的数据分析
Dec 16 Python
Python中用pyinstaller打包时的图标问题及解决方法
Feb 17 Python
Pytorch mask_select 函数的用法详解
Feb 18 Python
python 错误处理 assert详解
Apr 20 Python
Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript实现社交分享系统
Apr 21 Python
django form和field具体方法和属性说明
Jul 09 Python
pyspark对Mysql数据库进行读写的实现
Dec 30 Python
Python求区间正整数内所有素数之和的方法实例
Oct 13 #Python
python关于倒排列的知识点总结
Oct 13 #Python
Python如何使用ElementTree解析xml
Oct 12 #Python
Django ModelForm组件原理及用法详解
Oct 12 #Python
Python ConfigParser模块的使用示例
Oct 12 #Python
python修改微信和支付宝步数的示例代码
Oct 12 #Python
教你如何用python操作摄像头以及对视频流的处理
Oct 12 #Python
You might like
php分页函数
2006/07/08 PHP
用PHP制作静态网站的模板框架(二)
2006/10/09 PHP
使用PHP实现Mysql读写分离
2013/06/28 PHP
php中file_get_content 和curl以及fopen 效率分析
2014/09/19 PHP
php自定义函数实现统计中文字符串长度的方法小结
2017/04/15 PHP
PHP+Mysql+Ajax实现淘宝客服或阿里旺旺聊天功能(前台页面)
2017/06/16 PHP
基于PHP+mysql实现新闻发布系统的开发
2020/08/06 PHP
JavaScript 打地鼠游戏代码说明
2010/10/12 Javascript
script标签属性type与language使用选择
2012/12/02 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
2014/01/27 Javascript
原生JavaScript+LESS实现瀑布流
2014/12/12 Javascript
node.js中的console用法总结
2014/12/15 Javascript
深入浅析Bootstrap列表组组件
2016/05/03 Javascript
浅谈Angular 的变化检测的方法
2018/03/01 Javascript
jQuery实现获取form表单内容及绑定数据到form表单操作分析
2018/07/03 jQuery
React组件内事件传参实现tab切换的示例代码
2018/07/04 Javascript
[02:34]DOTA2英雄基础教程 幽鬼
2014/01/02 DOTA
[36:16]完美世界DOTA2联赛PWL S3 access vs Rebirth 第一场 12.19
2020/12/24 DOTA
python实现根据主机名字获得所有ip地址的方法
2015/06/28 Python
python http基本验证方法
2018/12/26 Python
python给微信好友定时推送消息的示例
2019/02/20 Python
Python enumerate函数功能与用法示例
2019/03/01 Python
浅谈Python的方法解析顺序(MRO)
2020/03/05 Python
Python pickle模块常用方法代码实例
2020/10/10 Python
纯CSS3打造属于自己的“小黄人”
2016/03/14 HTML / CSS
HTML5 window/iframe跨域传递消息 API介绍
2013/08/26 HTML / CSS
审计工作个人的自我评价
2013/12/25 职场文书
男女朋友协议书
2014/04/23 职场文书
计算机专业自荐信范文
2014/05/28 职场文书
我的中国梦演讲稿400字
2014/08/19 职场文书
老公保证书
2015/01/17 职场文书
材料员岗位职责
2015/02/10 职场文书
不同意离婚答辩状
2015/05/22 职场文书
河童之夏观后感
2015/06/11 职场文书
小学开学典礼新闻稿
2015/07/17 职场文书
工作自我评价范文
2019/03/21 职场文书