data analysis(矩阵运算)

'''
矩阵运算
1. 矩阵与数相乘。与矩阵每个元素相乘
2. 矩阵加减。对应位置元素相加减。shape属性必须一致
3. 矩阵相乘。m行n列 乘 n行l列 等于 m行l列。推荐使用matmul,dot
4. 矩阵对应元素相乘。用multiply
5. m.H共轭转置   m.I逆矩阵   m.T转置矩阵   m.A
'''


import numpy as np

# 1. 矩阵与数相乘。
m = np.mat([[2,3,5],[8,3,9]],dtype=np.int8)
# print(m)
# m2 = m * 3
# print(m2)


# 2. 矩阵加减。
# m3 = m + m2
# print(m3)


# 3. 矩阵相乘。
# m2 = np.mat([[2,3],[5,5]])
# print(m2)
# m3 = m2 *m矩阵相乘
# m3 = np.matmul(m2,m)矩阵相乘
# m3 = np.dot(m2,m)矩阵相乘
# print(m3)


矩阵对应元素相乘用multiply
# m3 = np.matrix([[2,2],[2,2]])
# m4 = np.multiply(m2,m3)
# print(m4)
# print(type(m4))
# print(type(m4.A))
# print(m4.A)
#
# m5 = np.matmul(m,m.I) 矩阵乘以其逆矩阵,得到单位矩阵
# print(m5)
#
# print(m.I)
# print(m * m.I)
# print(m.ndim)
# print(m.dtype)


# m.T矩阵m的转置矩阵。行列互换。
# m.H共轭转置矩阵。先共轭,虚部正负相反,再转置,行列互换。
# m.I互逆矩阵。相当于矩阵m的倒数。一个数乘以其倒数等于1,矩阵和互逆矩阵相乘等于单位矩阵。
# m.A矩阵m的视图



import numpy as np

# 创建数组
arr1 = np.array([[0,0,0,0],[1,1,1,1],[2,2,2,2],[3,3,3,3]])
print("arr1 :",arr1)
print("arr1 的shape:",arr1.shape) #(4,4)

arr2 = np.array([1,2,3,4])
print("arr2 :",arr2)
print("arr2 的shape:",arr2.shape) #(1,4)

#
arr3 = np.array([[1,2,3,4],[0,1,2,3]])
print("arr3 :",arr3)
print("arr3 的shape:",arr3.shape) # (2,4)
# 执行相加
# arr_new = arr1 + arr2
# print("arr_new :",arr_new)
# [[1 2 3 4]
#  [2 3 4 5]
#  [3 4 5 6]
#  [4 5 6 7]]

# arr_new = arr1 + arr3
# print("arr_new :",arr_new)
# ValueError: operands could not be broadcast together with shapes (4,4) (2,4)

# arr1 shape (2,4,5)
# arr2 shape (4,1)
#arr3  shape (5,)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值