numpy matrix和array的乘和加实例

yipeiwu_com7年前Python基础

1. 对于数组array

就是对应位置的元素相乘:

X1 = np.array([[1,2], [3, 4]])
X2 = X1
print X2*X1
[[ 1 4]
 [ 9 16]]

就是对应位置的相加:

X1 = np.array([[1,2], [3, 4]])
X2 = X1
print X2+X1
[[2 4]
 [6 8]]

2. 对于矩阵matrix

就是矩阵的点乘:

X1 = np.matrix([[1,2], [3, 4]])
X2 = X1
print X2*X1
[[ 7 10]
 [15 22]]

有两种情况,第一种是X1与X2的大小一致,就是普通的矩阵相加,即对应位置相加:

X1 = np.matrix([[1,2], [3, 4]])
X2 = X1
print X2+X1
[[2 4]
 [6 8]]

第二种情况是n*1的X1 + m*1的X2(或者反过来),就会得到n*m的矩阵:

X1 = np.matrix([[1,2,3]])
X2 = np.matrix([[1,2,3,4]]).T
print X2+X1
[[2 3 4]
 [3 4 5]
 [4 5 6]
 [5 6 7]]

3. 混用情况

在numpy中存在很多的matrix和array 运算符混用的情况,程序也能通过,但这样很不好,尽量按照以上原则使用。

如果2维的array想要进行矩阵的点乘运算,可以用np.dot(X1, X2)

如果matrix想要进行对应位置的乘,可以用np.multiply(X2,X1)

以上这篇numpy matrix和array的乘和加实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python通过属性手段实现只允许调用一次的示例讲解

如果希望一个对象的某个方法只能够调用一次,按照我之前的惯性思维,我肯定是定义一个状态量然后每次调用的时候修改它的值。通过查看状态量的数值,我可以决定采取执行不同的处理。 其实,除此之外还...

django模板结构优化的方法

模版结构优化 引入模版 有时候一些代码是在许多模版中都用到的。如果我们每次都重复的去拷贝代码那肯定不符合项目的规范。一般我们可以把这些重复性的代码抽取出来,就类似于Python中的函...

python使用writerows写csv文件产生多余空行的处理方法

初次接触python,学艺不精,第一次实战写一个文本处理的小程序时便遇到了头疼的问题。 先看代码: 生成的.CSV文件每两行之间都会多出一行空格(如下图),具体原因可参看点击打开链接...

基于django ManyToMany 使用的注意事项详解

使用场景一: 如果在一张表中ManayTOManay字段关联的是自身,也就是出项这样的代码: ManyToManyField(self) 那么,你需要注意一点,当你采用add方法将一个自...

利用python的socket发送http(s)请求方法示例

利用python的socket发送http(s)请求方法示例

前言 这是个在写计算机网络课设的时候碰到的问题,卡了我一天,所以总结一下。 其实在之前就有用requests写过python爬虫,但是计算机网络要求更底层的实现,刚好我看到了[这篇文章]...