美文网首页
数组与矩阵的操作

数组与矩阵的操作

作者: Chaweys | 来源:发表于2020-11-11 15:38 被阅读0次

import numpy as np
#1、数组的运算:两数组的行数和列数必须一致
a=np.arange(1,10).reshape(3,3)
b=np.arange(1,10).reshape(3,3)
print(a)
print(b)
'''
[[1 2 3]
 [4 5 6]
 [7 8 9]]
[[1 2 3]
 [4 5 6]
 [7 8 9]]
'''
#数组相加
print(a+b)
'''
[[ 2  4  6]
 [ 8 10 12]
 [14 16 18]]
'''
#数组相减
print(a-b)
'''
[[0 0 0]
 [0 0 0]
 [0 0 0]]
'''
#数组相乘
print(a*b)
'''
[[ 1  4  9]
 [16 25 36]
 [49 64 81]]
'''
#数组相除
print(a/b)
'''
[[1. 1. 1.]
 [1. 1. 1.]
 [1. 1. 1.]]
'''



#2、矩阵的操作
na=np.arange(12).reshape(3,4)
a=np.matrix(na)  #np的matrix(na)方法可将数组转换为矩阵
print(a)
print(type(a))
'''
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
 <class 'numpy.matrix'>
'''

#矩阵相加
a=np.matrix(np.arange(12).reshape(3,4))
b=np.matrix(np.arange(12).reshape(3,4))
print(a+b)
'''
[[ 0  2  4  6]
 [ 8 10 12 14]
 [16 18 20 22]]
'''

#矩阵相减
print(a-b)
'''
[[0 0 0 0]
 [0 0 0 0]
 [0 0 0 0]]
'''

#矩阵相乘:矩阵A的列数必须与矩阵B的行数一致
c=np.matrix(np.arange(12).reshape(3,4))
d=np.matrix(np.arange(12).reshape(4,5))
print(c.dot(d)) #矩阵的相乘,使用矩阵的dot()方法
'''
[[ 42  48  54]
 [114 136 158]
 [186 224 262]]
 
 如果矩阵A的列数必须与矩阵B的行数不一致,则报错:
 e=np.matrix(np.arange(12).reshape(3,4))
 print(d.dot(e))
 ValueError: shapes (3,4) and (3,4) not aligned: 4 (dim 1) != 3 (dim 0)
'''

相关文章

网友评论

      本文标题:数组与矩阵的操作

      本文链接:https://www.haomeiwen.com/subject/lkshbktx.html