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设计】。

相关文章

浅谈PyQt5中异步刷新UI和Python多线程总结

目前任务需要做一个界面程序,PyQt是非常方便的选择,QT丰富的控件以及python方便的编程。近期遇到界面中执行一些后台任务时界面卡死的情况,解决了在这里记录下。 PyQt PyQt简...

python实现贪吃蛇游戏

本文实例为大家分享了python实现贪吃蛇游戏的具体代码,供大家参考,具体内容如下 本文稍作改动,修复一些bug,原文链接:python实现贪吃蛇游戏 #!/usr/bin/env...

Python数据分析中Groupby用法之通过字典或Series进行分组的实例

在数据分析中有时候需要自己定义分组规则 这里简单介绍一下用一个字典实现分组 people=DataFrame( np.random.randn(5,5), columns=...

在Python中通过threading模块定义和调用线程的方法

定义线程 最简单的方法:使用target指定线程要执行的目标函数,再使用start()启动。 语法: class threading.Thread(group=None, targe...

python进阶教程之函数对象(函数也是对象)

秉承着一切皆对象的理念,我们再次回头来看函数(function)。函数也是一个对象,具有属性(可以使用dir()查询)。作为对象,它还可以赋值给其它对象名,或者作为参数传递。 lambd...