【py】python实现矩阵的加、减、点乘、乘法

西贝爱学习 2024-10-19 08:05:02 阅读 84

4f3b665f61ca41dea8118ed505d4b839.png

好的,我将使用Python语言来解决这个问题。我们将使用NumPy库来创建数组和进行矩阵运算。

以下是完整的代码:

import numpy as np

# (1) 创建一个3x4的二维数组test1, 数据值要求从0~1之间

test1 = np.random.rand(3, 4)

# (2) 创建12个服从均匀分布的随机数,尺寸为3x4的二维数组test2

test2 = np.random.uniform(0, 1, (3, 4))

# (3) 创建一个10个服从正态分布的随机数,test3

test3 = np.random.randn(10)

# (4) 对创建的test1和test2两个数组进行四则运算,加、减、点乘、矩阵乘法运算

# 加法

add_result = test1 + test2

# 减法

subtract_result = test1 - test2

# 点乘

elementwise_multiply_result = test1 * test2

# 矩阵乘法

matrix_multiply_result = np.dot(test1, test2)

# 打印结果

print("test1:\n", test1)

print("test2:\n", test2)

print("test3:\n", test3)

print("加法结果:\n", add_result)

print("减法结果:\n", subtract_result)

print("点乘结果:\n", elementwise_multiply_result)

print("矩阵乘法结果:\n", matrix_multiply_result)

代码解释:

1.  创建数组:

•  np.random.rand(3, 4) 创建一个3x4的二维数组,数据值从0到1之间。

•  np.random.uniform(0, 1, (3, 4)) 创建一个3x4的二维数组,数据值服从均匀分布。

•  np.random.randn(10) 创建一个包含10个服从正态分布的随机数的数组。

2.  四则运算:

•  加法:test1 + test2

•  减法:test1 - test2

•  点乘:test1 * test2(元素逐个相乘)

•  矩阵乘法:np.dot(test1, test2)

注意:

•  矩阵乘法要求第一个矩阵的列数等于第二个矩阵的行数,这里test1和test2都是3x4的矩阵,所以不能进行矩阵乘法。如果需要矩阵乘法,需要调整矩阵的尺寸。换成3x4和4x3的就可以用矩阵乘法了。

 

 

 



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。