自用numpy 查询用笔记,未完待补(别懈怠!加油写!~)

整理自:带佬详细指南

import numpy as np

目录

构造新矩阵:

已知转化为np矩阵:

构造指定范围和步长的矩阵:

取值:

广播与迭代:(记得补充广播)

矩阵对角线(包含上下三角):

对角线元素的提取与构造:

上三角、下三角的构造:


构造新矩阵:

#
np.zeros(Dim,dtype=) 元素为0
np.ones(...) 元素为1
np.empty(...) 元素为空

已知转化为np矩阵:

np.asarray(A,dtype) A为任意形式矩阵/元组
#todo
np.array(A,dtype)

构造指定范围和步长的矩阵:

np.arange(start,stop,step,dtype)
np.linspace(start,stop,num,endpoint,dtype) 高级arange num为序列元素数量
np.logspace(start,stop,base,dtype,num) base为基,start和stop为指数

取值:

s=slice(start,stop,step)
A[s] 取以s中元素为下标的A中元素
A[a1:b1,a2:b2,...,an:bn] 对于n维向量,取an到bn的元素
A[X1,X2,...,Xi,...] 其中Xi为[Xi1,Xi2,...,Xij,...],即要取的第j个元素在第i维上的分量                
                    最后取的元素:A[X1j][X2j][...][Xij][...]
                    写的一坨,不知道怎么描述。矩阵还是得好好上课
A[条件] 满足条件的所有元素,贼强,未来的我要是想处理掉一些值可以用这个!

广播与迭代:(记得补充广播)

np.nditer(A,order) order='C'/'F'竖着串或者横着串,反正串成一条就好遍历了
np.nditer(A,order='F',flags=['external_loop']) 超有用,每个元素是一条竖着的串串(其实也就是转置                
                                               一下再遍历每行的串串啦)

矩阵对角线(包含上下三角):

对角线元素的提取与构造:

numpy.eye(n,m,dtype,order,k) k=0默认为主对角线
                             k<0时k对角线为:[A[-k][0],A[-k+1][1],...,A[-k+i][i],...,
                             A[n-1][n-1+k]],总之生成一个n*m的k对角线上值为1的矩阵
                             k>0 同理
numpy.diag(v,k=0) v为二维数组则取第k对角线元素生成一维数组,v为一维数组则构造一个对角线矩阵(第k个                                
                  对角线有值)
ex|np.diag(np.diag(A)) 神中神,返回一个对角矩阵

上三角、下三角的构造:

np.tri(n,m,k,dtype) 生成一个下三角矩阵,第k,k-1,...,k-i,...,-(n-1)个对角线元素均为1
np.tril(A,k) 构造一个下三角矩阵,取A的第k,k-1,...,k-i,...,-(n-1)个对角线,其余对角线元素为0
np.triu(A,k) 构造一个上三角矩阵,取A的第k,k+1,...,k+i,..., (n-1)个对角线,其余对角线元素为0

矩阵运算:

np.sum(A,axis) #对矩阵的第axis维的向量进行求和,第axis-1维元素=合并所有第axis维元素
               #使得d0*d1*d2*...*dn变为d0*d1*d2*d(axis-1)*d(axis+1)*...*dn
               #A[0:d0]...[0:d(axis-1)]=sum(d[d0]...[d(axis)][:])


A.T:转置

整理自:带佬运算相关

//todo

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值