1、python的广播,方便计算
①一维向量+常量
②多维向量+常量
③多维向量+行向量(要求一致)
④多维向量+列向量(要求一致)
#coding:utf-8
import numpy as np
if __name__=="__main__":
#注意是3行,秩为1的矩阵
a=np.array([1,2,3])
print a.shape
a=a.reshape(3,1)
print a.shape
b=a.T
print a
print b
#一维矩阵广播,常量扩展成相同大小矩阵
print a+1
print b+2
#多维矩阵广播,常量,行向量,列向量
a=np.array([[1,2,3],[4,5,6]])
b=[1,2,3]
c=[[4],[5]]
print a+1
print a+b
print a+c结果显示:
(3,)
(3, 1)[[1]
[2]
[3]][[1 2 3]] [[2] //一维向量+常数
[3]
[4]][[3 4 5]][[2 3 4] //多维向量+常数
[5 6 7]][[2 4 6] //多维向量+行向量
[5 7 9]][[ 5 6 7] //多维向量+列向量
[ 9 10 11]]