Numpy数组的广播机制的实现


本文整理自网络,侵删。

前言

Numpy数组不需要循环遍历,即可对每个元素执行批量的算术运算操作(矢量化运算)。当两个数组大小(Numpy.shape)不同时,进行算术运算会出现广播机制。

数组广播

数组在进行矢量化运算的时,要求数组形状时相等的。当形状不等的数组执行算术运算的时候,就会出现广播机制,该机制会对数组进行扩展,使数组的shape属性值一样,就可以进行矢量化运算了。

import numpy as np
arr1 = np.array([[0], [1], [2], [3]])
print(arr1.shape)
arr2 = np.array([1, 2, 3])
print(arr2.shape)
val = arr2+arr1
print(val)

输出结果
(4, 1) //arr1的shape
(3,) //arr2的shape
[[1 2 3]
[2 3 4]
[3 4 5]
[4 5 6]]

由于arr1和arr2的shape不等,故通过广播机制进行如下图的扩展

广播机制的使用条件

1、数组的某一维度等长
2、其中一个数组的某一维度为1

到此这篇关于Numpy数组的广播机制的实现的文章就介绍到这了,更多相关Numpy数组的广播机制内容请搜索

更多技术内容来自木庄网络博客


标签:帝国CMS

相关阅读 >>

帝国CMS7.0iis伪静态设置教程

剖析帝国CMS核心文件eclassconnect.php中的常用函数

帝国CMS内容简介截取字数的实现方法

帝国CMS 腾讯qq、淘宝旺旺、微软msn、谷歌gtalk 等在线客服增加方法

dedecms去除所有自带后门和漏洞的方法(dede安装之后需要做的事)

帝国CMS自动截取简介出现乱码的解决方法

帝国CMS列表式分页导航样式修改示例

帝国CMS的灵动标签判断栏目id的方法

灵动标签调用栏目缩略图的方法

帝国CMS tags功能介绍与管理

更多相关阅读请进入《帝国CMS》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...