首页 > 其他分享 >【Numpy总结】第五节:Numpy的广播(更易理解的版本)

【Numpy总结】第五节:Numpy的广播(更易理解的版本)

时间:2022-10-01 22:02:56浏览次数:59  
标签:维度 arange 第五节 广播 np 数组 print Numpy

Numpy的广播的三种情况

广播(Broadcast)是 numpy 对不同形状(shape)的数组进行数值计算的方式,当运算中的 2 个数组的形状不同时,numpy 将自动触发广播机制;即:可扩充较小数组中的元素来适配较大数组的形状,这种机制叫作广播(broadcasting) 广播机制如下,一共三种情况:由于日常应用中最常见的只有一维数组与二维数组,所以就不举三维及以上数组的例子了;这样更容易理解;

1. 有一个数组是一个数字,即可广播;

有一个数组是一个数字,则可以将该数字广播,如下图: 在这里插入图片描述 举例如下:

a = np.arange(3)
b = 5
print(a+b)
# 输出为:[5 6 7]

2. 维度的尾部一致,即可广播;

维度的尾部一致,即可广播;如下图,尾部维度均为3; 在这里插入图片描述 举例如下:尾部维度均为4;

a = np.arange(12).reshape(3,4)
b= np.arange(4)
print(a)   
# [[ 0  1  2  3]
#  [ 4  5  6  7]
#  [ 8  9 10 11]]
print(b)
# [0 1 2 3]
print(a+b)
# [[ 0  2  4  6]
#  [ 4  6  8 10]
#  [ 8 10 12 14]]

3. 两个数组均为一维数组,一个为行方向,一个为列方向,即可广播;

在这里插入图片描述 举例如下:

a = np.arange(3).reshape(3,1)
b= np.arange(3)
print(a)
# [[0]
#  [1]
#  [2]]
print(b)
# [0 1 2]
print(a+b)
# [[0 1 2]
#  [1 2 3]
#  [2 3 4]]

标签:维度,arange,第五节,广播,np,数组,print,Numpy
From: https://blog.51cto.com/u_15807450/5728484

相关文章

  • 【Numpy总结】第三节:Numpy创建数组
    一、标准数组的创建1.1numpy.empty创建空数组用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组;由于未初始化,所以数组中的数据是随机的;numpy.empty(shape,dt......
  • Python基础(十) | Numpy详细教程
    第十一章Numpy库⭐本专栏旨在对Python的基础语法进行详解,精炼地总结语法中的重点,详解难点,面向零基础及入门的学习者,通过专栏的学习可以熟练掌握python编程,同时为后续的数据......
  • 【Numpy总结】第四节:Numpy的切片索引与高级索引
    一、Numpy的切片索引1.1使用slice内置函数(不常用)ndarray对象的内容可以通过切片来访问,与Python中list的切片操作完全一样。使用slice并设置start,stop及step参......
  • 【Numpy总结】第二节:Numpy 的属性与形状变换
    一、最基本的属性在NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(dimensions),维度的数量称为秩(rank);比如说,二维数组相当于是两个一维数组,即二维数组有两个轴,秩为2。......
  • 科学计算库NumPy
    科学计算库NumPy目录科学计算库NumPy一.简单介绍二.认识NumPy数组对象三.创建NumPy数组四.ndarray对象的数据类型1.查看数据类型2.转换数据类型五.数组运算1.矢量......
  • 25. NumPy和Matplotlib绘图
    1.前言Matplotlib是Python的绘图库,它经常与NumPy一起使用,从而提供一种能够代替Matlab的方案。不仅如此Matplotlib还可以与PyQt和wxPython等图形工具包一起......
  • 24. NumPy矩阵乘法
    1.前言矩阵乘法是将两个矩阵作为输入值,并将A矩阵的行与B矩阵的列对应位置相乘再相加,从而生成一个新矩阵,如下图所示:注意:必须确保第一个矩阵中的行数等于第二个矩阵中......
  • mitudesk的numpy日记 赋值与切片
    1.赋值与切片,就是按照惯常的方式去赋值,去切片,和之前的list切片很像2.高级索引第一种就是直接二维数组的方式,直接通过[1][1]的这种形式来访问第二种是通过元组的固定坐标......
  • (转载)【RocketMQ 课程笔记】16.实现集群消费模式与广播消费模式
    集群消费模式与广播消费模式环境准备生产者CmProducer生产者是一致的,循环生成10条普通消息投给给Broker,主题为:cm-sample-data,Tag:test,Key:n@Slf4jpublicclassCmPro......
  • 20. NumPy副本和视图
    1.前言对NumPy数组执行些函数操作时,其中一部分函数会返回数组的副本,而另一部分函数则返回数组的视图。本节对数组的副本和视图做重点讲解。其实从内存角度来说,副本就是......