numpy——奇异值分解使用到的相关方法

clip()

np.clip(a, a_min, a_max, out=None)[source]
a是一个数组,后面两个参数分别表示最小和最大值
功能:将数组中的元素限制在a_min, a_max之间,大于a_max的就使得它等于 a_max,小于a_min,的就使得它等于a_min。

x=np.array([1,2,3,5,6,7,8,9])
np.clip(x,3,8)

array([3, 3, 3, 5, 6, 7, 8, 8])

rint ()

np.rint(x)
功能:将数组的元素四舍五入为最接近的整数

a = np.array([-1.7, -1.5, -0.2, 0.2, 1.5, 1.7, 2.0])
np.rint(a)

array([-2., -2., -0., 0., 2., 2., 2.])

linalg.eig()

np.linalg.eig(a)
参数a是一个方阵
功能:计算方阵的特征值和特征向量

import numpy as np
a = np.array([[1,0,1],[0,1,1],[0,0,0]],dtype = np.float)
w,v = np.linalg.eigh(a.T.dot(a))  #w特征值、v特征向量

(array([0., 1., 3.]),
array([[ 0.5774, 0.7071, -0.4082],
[ 0.5774, -0.7071, -0.4082],
[-0.5774, 0. , -0.8165]]))

argsort()

np.argsort(a)
功能:将x中的元素从小到大排列,提取其对应的index(索引)。

y=np.array([3,0,2,1,4,5])
np.argsort(y)
#array([1, 3, 2, 0, 4, 5])
y=np.array([3,0,2,1,4,5])
np.argsort(y)[::-1] #返回逆序后的下标
#array([5, 4, 0, 2, 3, 1])

sort()

np.sort(a)
功能:对数组的元素进行排序,默认升序。

y=np.array([3,0,2,1,4,5])
np.sort(y)
#array([0, 1, 2, 3, 4, 5])

diag()

np.diag(a)
功能:a是一个1维数组时,结果形成一个以一维数组为对角线元素的矩阵;a是一个二维矩阵时,结果输出矩阵的对角线元素;

y=np.array([1,2,3])
x = np.diag(y)
/*array([[1, 0, 0],
       [0, 2, 0],
       [0, 0, 3]])
*/
np.diag(x)
#array([1, 2, 3])

linalg.svd()

np.linalg.svd(a,full_matrices=1,compute_uv=1)
参数:
1、a是一个形如(M,N)矩阵
2、full_matrices的取值是为0或者1,默认值为1,这时u的大小为(M,M),v的大小为(N,N) 。否则u的大小为(M,K),v的大小为(K,N) ,K=min(M,N)。
3、compute_uv的取值是为0或者1,默认值为1,表示计算u,s,v。为0的时候只计算s
功能:进行矩阵的奇异值分解,返回u,s,v

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值