python中a的平方怎么表示_python平方符号
numpy矩阵严格是二维的,而numpy数组(ndarrays)是N维的。矩阵对象是ndarray的子类,因此它们继承了ndarray的所有属性和方法。
numpy矩阵的主要优点是它们为矩阵乘法提供了一种方便的表示法:如果a和b是矩阵,则a * b是它们的矩阵乘积。
import numpy as np
a=np.mat('4 3; 2 1') b=np.mat('1 2; 3 4') print(a)
[[4 3]
[2 1]]
print(b)
[[1 2]
[3 4]]
print(a*b)
[[13 20]
[ 5 8]]
另一方面,从Python 3.5开始,NumPy使用@运算符支持中缀矩阵乘法,因此您可以在Python> = 3.5中使用ndarrays实现相同的矩阵乘法便利。
import numpy as np
a=np.array([[4, 3], [2, 1]]) b=np.array([[1, 2], [3, 4]]) print(a@b)
[[13 20]
[ 5 8]]
矩阵对象和ndarray都.T必须返回转置,但是矩阵对象也必须具有.H共轭转置和.I逆。
相反,numpy数组始终遵守以元素为单位应用操作的规则(除了new @运算符)。因此,如果a和b是numpy数组,则a*b该数组是通过按元素逐个乘以组成的:
c=np.array([[4, 3], [2, 1]]) d=np.array([[1, 2], [3, 4]]) print(c*d)
[[4 6]
[6 4]]
要获得矩阵乘法的结果,请使用np.dot(或@在Python> = 3.5中,如上所示):
print(np.dot(c,d))
[[13 20]
[ 5 8]]
该**运营商还表现不同:
print(a**2)
[[22 15]
[10 7]]
print(c**2)
[[16 9]
[ 4 1]]
由于a是矩阵,所以a2返回矩阵乘积a*a。由于c是ndarray,因此c2返回一个ndarray,每个组件的元素均平方。
矩阵对象和ndarray之间还有其他技术区别(与np.ravel,项目选择和序列行为有关)。
numpy数组的主要优点是它们比二维矩阵更通用。当您需要3维数组时会发生什么?然后,您必须使用ndarray,而不是矩阵对象。因此,学习使用矩阵对象的工作量更大-您必须学习矩阵对象操作和ndarray操作。
编写同时使用矩阵和数组的程序会使您的生活变得困难,因为您必须跟踪变量是什么类型的对象,以免乘法返回意外的结果。
相反,如果仅使用ndarray,则可以执行矩阵对象可以执行的所有操作,以及更多操作,但功能/符号略有不同。
如果您愿意放弃NumPy矩阵产品表示法的视觉吸引力(使用python> = 3.5的ndarrays几乎可以优雅地实现),那么我认为NumPy数组绝对是可行的方法。
PS。当然,您真的不必以牺牲另一个为代价来选择一个,因为np.asmatrix并np.asarray允许您将一个转换为另一个(只要数组是二维的)。
问题来源于stack overflow
python中a的平方怎么表示_python平方符号相关推荐
- 在python中是否可以使用if作为变量名_在Python中可以使用if 作为变量名_python使用符号 标示注释...
在Python中可以使用if 作为变量名 答:× " src=" " style="max-width: 100%; display: inline;" ...
- python中使用什么划分语句块_Python 使用符号() 标示注释,以() 划分语句块。_学小易找答案...
[填空题]import numpy as np arr=np.array([[1,2,3],[4,5,6],[7,8,9]]) 则arr[0]为 ,arr[1][1]为 . [填空题]4 . 幂 级数 ...
- python中的取余运算符是_python取余运算
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! python中对负数求余的计算方法和求幂运算注意点python中对负数求余的计算 ...
- python中map函数是什么意思_python中map什么意思
python中map什么意思? python中map() 会根据提供的函数对指定序列做映射. 第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 func ...
- python中str的index什么意思_python中index的用法是什么
index() 一般用处是在序列中检索参数并返回第一次出现的索引,没找到就会报错,比如:>>> t=tuple('Allen') >>> t ('A', 'l', ...
- python中gil锁和线程锁_Python线程——GIL锁、线程锁(互斥锁)、递归锁(RLock)...
GIL锁 计算机有4核,代表着同一时间,可以干4个任务.如果单核cpu的话,我启动10个线程,我看上去也是并发的,因为是执行了上下文的切换,让看上去是并发的.但是单核永远肯定时串行的,它肯定是串行 ...
- python中函数包括标准库函数吗_Python语言和标准库(第二章:函数)
a-如何创建函数. b-给出一些指导原则,帮助思考如何创建和组织程序以使用函数. c-如何编写函数,使随后可以询问它们的工作方式和实现的功能. 2.1将程序放在单独的文件里 为了更加方便,从现在开始, ...
- python中int表示的数据类型是_python中的基本数据类型之 int bool str
一.基本数据类型 1. int ==> 整数.主要用来进行数学运算. 2.str ==> 字符串.可以保存少量的数据,并进行相应的操作. 3.bool => 布尔值.判断 ...
- python中导入模块用什么命令_Python导入模块的技巧
作为使用Python的开发者,我们一开始学习的内容之一就是如何导入Python的各种模块或库.但是我们注意到,那些经常使用Python的用户并不一定都知道Python的导入机制其实非常灵活.在本文中, ...
- python中math.ceil是什么意思_python中的数字取整(ceil,floor,round)概念和用法
python中的数学运算函数(ceil,floor,round)的主要任务是截掉小数以后的位数.总体来说 就是取整用的.只是三者之间有微妙的区别: floor() :把数字变小 ceil() : 把数 ...
最新文章
- PowerShell 2.0 实践(十二)管理 SQL Server 2008 R2(1)
- 无刷新读取数据库 (ajax)
- php封装pdo实例以及pdo长连接的优缺点
- Android自定义控件属性的使用
- qt mysql 系统时间_使用QT和参数在SQLite数据库中插入日期时间
- mongodb 添加用户及权限设置详解
- BZOJ2563: 阿狸和桃子的游戏 贪心
- 快到而立之年了,可是能撑得起而立吗?
- Netty中的Channel之数据冲刷与线程安全(writeAndFlush)
- 验证服务器的通用性,通用VNFM部署的可行性分析与验证
- SpringBoot整合RabbitMQ之Topic Exchange通配符交换机(学习总结)
- php合成flv,用php将任何格式视频转为flv
- redis连接与关闭
- 两台无线路由桥接教程
- word报错“您的组织策略阻止我们为您完成此操作”的解决方法
- Python编写无界面版打字练习程序
- 评估行人行动预测的基准——Benchmark for Evaluating Pedestrian Action Prediction
- apiserver报错:OpenAPI spec does not exists
- Windows 10 21H1 更新的3种方式
- Apache Traffic Server 简介