Python-numpy中有一种很高效的方法:广播。  下面介绍一下广播。

实例:【3】Python中的广播对于这个矩阵,如果想求每列元素的和,怎么才能不用for循环?

 

 【3】Python中的广播【3】Python中的广播(1,4)指的是一行四列的矩阵;axis决定了是横向(行)求和还是竖向(列)求和。为0时竖向,1时横向;在矩阵前*100,是让矩阵里面的数为百分数;reshape作用是调整矩阵形状,如reshape(1,4)就是把矩阵调整为1行4列的。

 

A是3*4的,(cal..)是1*4的,A/(cal..)就是3*4矩阵/1*4矩阵,那这是怎么运算的呢?

【3】Python中的广播

 

 计算方法如上图,其实很简单,如:(m,n)与(1,n)进行运算,就是把(1,n)复制m次,变成(m,n)后再进行运算。其它的类似。

print(a.T)   输出矩阵a的转置。   print(a.shape)  输出矩阵a的“形状”

【3】Python中的广播左边这两种是较好的建立列向量或行向量a的方式,而不是【3】Python中的广播

 

所以为了避免bug的出现,要使用n*1的列/行向量,而不是含有n个数字的数组。

【3】Python中的广播

 【3】Python中的广播

【3】Python中的广播是X123与a1[1]的权值,以此类推

相关文章:

  • 2021-04-22
  • 2021-08-28
  • 2022-12-23
  • 2021-06-06
  • 2021-05-27
  • 2022-12-23
  • 2021-11-12
  • 2021-06-13
猜你喜欢
  • 2021-06-06
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-09
  • 2022-12-23
相关资源
相似解决方案