shape :英文翻译为 形状

在矩阵中是读取矩阵的行数和列数的信息。

reshape : 英语翻译为 重塑、改变…的形状

在矩阵中是改变数组arr的矩阵形式。

代码在Python3.6版本或者Pycharm上运行。

1、shape的用法

import numpy as np

a = np.array([1,2,3,4,4,3,2,8]) #一维数组

a1 = np.array([[1,2,3,4],[4,3,2,8]]) #二维数组

print(a.shape[0]) #值为8,因为有8个数据

print(a1.shape[0]) #值为2(2行)

print(a1.shape[1]) #值为4(4列)

由上代码可以看出:

一维数组的时候:shape是读取数组的数据个数。

二维数组的时候:shape[0]读取的是矩阵的行数,shape[1]读取的是矩阵的列数。

2、reshape的用法

import numpy as np

a = np.array([1,2,3,4,4,3,2,8]) #一维数组

print(a.reshape(2,4) )

#输出结果为:[[1 2 3 4]

# [4 3 2 8]]

print(a.reshape(3,3))

#ValueError: cannot reshape array of size 8 into shape (3,3)

由上列代码可以看出:

reshape(m,n)将原矩阵改变为m行n列的新矩阵,但是新矩阵数据如果超过了原来数据的索引范围就会报错。

3、shape和reshape混合使用的例子:

import numpy as np

import matplotlib.pyplot as plt

from sklearn.linear_model import LinearRegression

from matplotlib.font_manager import FontProperties #导入字体属性模块

font_set = FontProperties(fname=r"c:\windows\fonts\simsun.ttc", size=20) #设置字体为宋体

def runplt(): #设置生成画图的函数

plt.figure() # 定义figure

plt.title(u'披萨的价格和直径', fontproperties=font_set)

plt.xlabel(u'直径(inch)', fontproperties=font_set)

plt.ylabel(u'价格(美元)', fontproperties=font_set)

plt.axis([0, 25, 0, 25])

plt.grid(True) #画网格线

return plt

# 训练集和测试集数据

X_train = [[6], [8], [10], [14], [18]]

y_train = [[7], [9], [13], [17.5], [18]]

X_test = [[7], [9], [11], [15]]

y_test = [[8], [12], [15], [18]]

# 画出横纵坐标以及若干散点图

plt1 = runplt()

plt1.scatter(X_train, y_train, s=40) #每个点的size是40

# 给出一些点,并画出线性回归的曲线

xx = np.linspace(0, 26, 100) #0-26之间等间隔生成100个点作为XX的横轴

regressor = LinearRegression()

regressor.fit(X_train, y_train)

yy = regressor.predict(xx.reshape(xx.shape[0], 1)) #预测100个点的横坐标得到yy

#shape[0] 第一维(行)的长度(行数)

#shape[1]为列数

#reshape((2,4)) 改成2行4列矩阵

plt.plot(xx, yy, label="linear equation")

原文链接:https://blog.csdn.net/guangwulv/article/details/107897536

python的shape和reshape_一文浅显易懂:Python中shape()和reshape()的用法和区别相关推荐

  1. python list转换成array_一文掌握Python【不定期更新】

    目录 一.Numpy 1 基本操作 2 随机数 3 打乱训练数据 4 得到元素的最值 5 拼接数组 6 得到函数的信息 7 得到累乘即各项相乘的结果 8 判断一个数是否在数组中 9 数组的变换 10 ...

  2. python 类变量、实例变量、参数、实例方法、类方法、静态方法 的用法和区别

    #!/usr/bin/env python # -*- encoding: utf-8 -*- """ @Introduce : 类变量.实例变量.参数.实例方法.类方法 ...

  3. python office自动化_Python office automation:文档,python,自动化,办公,文件,篇,整理,一键,完成...

    文件整理不得不先提一下正则表达式 送上链接: python :re模块基本用法 一.列出文件夹下的所有文件 os.walk()用法 [ (当前目录列表),(子目录列表),(文件列表)]os.walk( ...

  4. python 列表生成式_深度好文:Python之列表生成式、生成器、可迭代对象与迭代器(一)...

    作者:云游道士 原文:https://www.cnblogs.com/yyds/p/6281453.html 本节内容 语法糖的概念 列表生成式 生成器(Generator) 可迭代对象(Iterab ...

  5. python request下载word,下载word文档python

    对于我的课程,我必须建立一个网络刮板,它可以浏览img,word文档和pdf的网站并将它们下载到一个文件中,我有img的下载工作,但当我将代码改为下载docs或pdf时,它根本找不到任何东西,我使用b ...

  6. python两个等于号是代表什么_Python中is与双等于号“==”的区别

    Python有两个用于相等比较的运算符,"is"和"=="(等于).在这篇文章中,我将带你们了解Python中"is"和"==&q ...

  7. thymeleaf文档_springboot中Thymeleaf和Freemarker模板引擎的区别

    这两个都是属于模板引擎,可是各有各的好处,enn,在市面上比较多的也就是jsp.freemarker.velocity.thymeleaf等页面方案.Thymeleaf和Freemarker的区别Fr ...

  8. python判断字符串是否为回文if语句_如何python判断字符串是否为回文?

    如何python判断字符串是否为回文? python判断字符串是否为回文的方法: 1.回文字符串:一个字符串,不论是从左往右,还是从右往左,字符的顺序都是一样的(如abba,abcba等). 2.如何 ...

  9. python程序员专用壁纸_程序员炫技必备:用Python生成马赛克画!(文末附源码)...

    原标题:程序员炫技必备:用Python生成马赛克画!(文末附源码) 源 | Python与数据分析文 | 强哥 大家知道马赛克画是什么吗?不是动作片里的马赛克哦~~ 马赛克画是一张由小图拼成的大图,本 ...

  10. Python实现自动化办公(三):Python对PPT文档的基本操作(python-pptx)

    Python对PPT文档的基本操作 文章目录 Python对PPT文档的基本操作 一.pptx模块 1.官方文档 2.安装pptx模块 二.基本函数的使用方法 三.使用案例 1.修改ppt内容 2.写 ...

最新文章

  1. 图像金字塔与resize函数
  2. 电路交换-报文交换-分组交换- 分组交换包括:虚电路和数据报
  3. python不能加密_Python之加密模块
  4. 【C++】C++的拷贝控制
  5. [Android] TextView 分页功能的实现
  6. js实时获取窗口大小变化
  7. NLP技术基石:从N-gram统计语言模型到BERT预训练模型演变史概述
  8. 在ASP中常见的错误80004005信息和解决办法
  9. 宏基笔记本升级bios(2012-12-28-bd 写的日志迁移
  10. 美赛常用数据库网站大全
  11. c++实验3——个人税收计算器
  12. 【小月电子】国产安路FPGA开发板系统学习教程-LESSON9简易测试系统
  13. 怎样调整计算机桌面字体大小,如何把电脑字体调小?教你怎么调整电脑屏幕的字体大小...
  14. 梦行扫码付(收银台条码支付 微信钱包条码支付 支付宝二维码支付 手机APP钱包支付 PHP扫码支付 )
  15. 绕过AMSI详细指南:如何利用DLL hijack轻松绕过AMSI
  16. sql数据库本地服务器不显示,sql数据库本地服务器不显示
  17. 收好了,这些max工作效率的学习资源,赶紧用起来
  18. 2022年最新广西道路运输安全员真题题库及答案
  19. $(function() {})是什么?
  20. 【机器学习代码例】LSSVM,python代码实例

热门文章

  1. Ubuntu内核升级导致显卡冲突,升级显卡并禁用自动更新教程
  2. 注册了DELPHI盒子
  3. 【光通信】单模与多模区别
  4. mysql数据库加载太慢_MySQL数据库导致网站打开速度慢的解决思路
  5. Calendar获取上个月第一天和最后一天,上周第一天和最后一天
  6. 手把手教你批量下载微博视频
  7. 群晖能不能像服务器一样共享桌面,电脑桌面与群晖NAS双向实时同步
  8. 小工程结算书范本_建筑工程结算书范本
  9. php halt,ThinkPHP halt和$this-error区别?
  10. 如何正确使用短信验证码