【数据挖掘】——向量and矩阵

一、向量

  • 向量加减:m+n:对应位置元素加减
  • 向量乘以常数:m*3
  • 向量点乘(内积):np.dot(m,n)相应位置元素相乘再相加
  • 向量叉乘(外积):np.cross(m,n)
  • 向量哈达玛积:m*n对应位置相乘

二、矩阵

  • 矩阵创建:np.mat(np.random.randint(1,10,size=(2,3))
  • 矩阵加减:A+B对应位置相加减,两个矩阵必须具有相同阶
  • 矩阵与数相乘:A*2
  • 矩阵与向量相乘:保证矩阵列数等于向量行数
#矩阵与向量相乘
import numpy as np
A=np.mat(np.random.randint(1,10,size=(3,3)))
print(A)
m=np.array([[0,1],[1,2],[2,3]])
print(m)
print('A*m:',A*m)
>>
A: [[6 2 9]
   [2 5 1]
   [1 6 1]]
m: [[0 1]
   [1 2]
   [2 3]]
A*m: [[20 37]
      [ 7 15]
      [ 8 16]]
  • 矩阵与矩阵相乘
#矩阵与矩阵相乘
#矩阵与矩阵相乘
import numpy as np
A=np.mat(np.random.randint(1,10,size=(3,3)))
print('A:',A)
B=np.mat(np.random.randint(1,10,size=(3,2)))
print('B:',B)
print('A*B:',A*B)
>>
A: [[7 5 2]
    [2 5 3]
    [6 3 3]]
B: [[8 6]
    [7 5]
    [2 3]]
A*B: [[95 73]
      [57 46]
      [75 60]]
  • 矩阵转置
#矩阵转置
import numpy as np
A=np.mat(np.random.randint(1,10,size=(3,3)))
print(A)
print('转置矩阵:',A.T)
>>[[6 3 4]
   [3 8 1]
   [5 3 3]]
转置矩阵: [[6 3 5]
            [3 8 3]
            [4 1 3]]
  • 特殊矩阵
#零矩阵
print('零矩阵:',np.mat(np.zeros(shape=(2,3))))
#单位矩阵
print('单位矩阵:',np.identity(3))
#对角矩阵
print('对角矩阵:',np.diag((1,2,3)))
#对称矩阵
X=np.mat([[1,2,3],[4,5,6],[7,8,9]])
A=np.triu(X)#取出上三角
X=A+A.T-np.diag(np.diagonal(X))#np.diagonal(X)可获取对角线元素
print('对称矩阵:',X)
>>零矩阵: [[0. 0. 0.]
            [0. 0. 0.]]
单位矩阵: [[1. 0. 0.]
           [0. 1. 0.]
           [0. 0. 1.]]
对角矩阵: [[1 0 0]
           [0 2 0]
           [0 0 3]]
对称矩阵: [[1 2 3]
           [2 5 6]
           [3 6 9]]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值