Python矩阵和Numpy数组有什么联系?
四、矩阵运算
两个矩阵相加,两个矩阵相乘以及一个矩阵转置。在编写这些程序之前,使用了嵌套列表。让看看如何使用NumPy数组完成相同的任务。
两种矩阵的加法
使用+运算符将两个NumPy矩阵的对应元素相加。
import numpy as np
A = np.array([[2, 4], [5, -6]])B = np.array([[9, -3], [3, 6]])C = A + B # 元素聪明的加法print(C)
两个矩阵相乘
为了将两个矩阵相乘,使用dot()方法。
注意:用于数组乘法(两个数组的对应元素的乘法),而不是矩阵乘法。
import numpy as np
A = np.array([[3, 6, 7], [5, -3, 0]])B = np.array([[1, 1], [2, 1], [3, -3]])C = A.dot(B)print(C)
矩阵转置
使用numpy.transpose计算矩阵的转置。
import numpy as np
A = np.array([[1, 1], [2, 1], [3, -3]])print(A.transpose())
注:
NumPy使的任务更加轻松。
五、案例
1. 访问矩阵元素
与列表类似,可以使用索引访问矩阵元素。让从一维NumPy数组开始。
import numpy as npA = np.array([2, 4, 6, 8, 10])
print("A[0] =", A[0]) # First element print("A[2] =", A[2]) # Third element print("A[-1] =", A[-1]) # Last element
运行该程序时,输出为:
现在,让看看如何访问二维数组(基本上是矩阵)的元素。
import numpy as np
A = np.array([[1, 4, 5, 12], [-5, 8, 9, 0], [-6, 7, 11, 19]])
# First element of first rowprint("A[0][0] =", A[0][0])
# Third element of second rowprint("A[1][2] =", A[1][2])
# Last element of last rowprint("A[-1][-1] =", A[-1][-1])
当运行程序时,输出将是:
2. 访问矩阵的行
import numpy as np
A = np.array([[1, 4, 5, 12], [-5, 8, 9, 0], [-6, 7, 11, 19]])
print("A[0] =", A[0]) # First Rowprint("A[2] =", A[2]) # Third Rowprint("A[-1] =", A[-1]) # Last Row (3rd row in this case)
当运行程序时,输出将是:
3. 访问矩阵的列
import numpy as np
A = np.array([[1, 4, 5, 12], [-5, 8, 9, 0], [-6, 7, 11, 19]])
print("A[:,0] =",A[:,0]) # First Columnprint("A[:,3] =", A[:,3]) # Fourth Columnprint("A[:,-1] =", A[:,-1]) # Last Column (4th column in this case)
当运行程序时,输出将是:
注:
使用NumPy(而不是嵌套列表)可以更轻松地处理矩阵,而且甚至都没有涉及基础知识。建议详细研究NumPy软件包,尤其是当尝试将Python用于数据科学/分析时。
六、总结
本文基于Python基础,介绍了矩阵和NumPy数组,重点介绍了NumPy数组,如何去安装NumPy模块,如何去创建一个NumPy数组的两种方式。
通过案例的分析,代码的演示,运行效果图的展示,使用Python语言,能够让读者更好的理解。
读者可以根据文章内容,自己实现。有时候看到别人实现起来很简单,但是到自己动手实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。
代码很简单,希望对你学习有帮助。
最新活动更多
-
即日-11.13立即报名>>> 【在线会议】多物理场仿真助跑新能源汽车
-
11月20日火热报名中>> 2024 智能家居出海论坛
-
11月28日立即报名>>> 2024工程师系列—工业电子技术在线会议
-
12月19日立即报名>> 【线下会议】OFweek 2024(第九届)物联网产业大会
-
即日-12.26火热报名中>> OFweek2024中国智造CIO在线峰会
-
即日-2025.8.1立即下载>> 《2024智能制造产业高端化、智能化、绿色化发展蓝皮书》
推荐专题
发表评论
请输入评论内容...
请输入评论/评论长度6~500个字
暂无评论
暂无评论