【再回首Python之美】【numpy.linalg】计算矩阵/向量的三种范数:numpy.linalg.norm()

本文介绍了Python中numpy.linalg.norm方法,用于计算矩阵和向量的范数。通过该方法,可以方便地求得矩阵的三种范数和向量的三种范数,进而应用到如欧氏距离的计算中。内容包括方法简介、范数类型以及实际应用示例。
摘要由CSDN通过智能技术生成

1.numpy.linalg.norm方法简介

numpy.linalg.norm(x, ord=None, axis=None, keepdims=False)[source]

The following norms can be calculated:

ord	norm for matrices	norm for vectors
None	Frobenius norm	2-norm
‘fro’	Frobenius norm	–
‘nuc’	nuclear norm	–
inf	max(sum(abs(x), axis=1))	max(abs(x))
-inf	min(sum(abs(x), axis=1))	min(abs(x))
0	–	sum(x != 0)
1	max(sum(abs(x), axis=0))	as below
-1	min(sum(abs(x), axis=0))	as below
2	2-norm (largest sing. value)	as below
-2	smallest singular value	as below
other	–	sum(abs(x)**ord)**(1./ord)

使用np.linalg.norm很实用,比如用2-norm可以很容易求得欧式距离等

2.求矩阵的三种范数

# -*- coding: utf-8 -*-
"""
@author: 蔚蓝的天空Tom
Talk is cheap, show me the code
Aim:用numpy.linalg.norm方法求矩阵的三种范数
Note numpy.linalog.norm ---> return Norm of the matrix or vector(s)
"""

import numpy as np
from numpy import linalg as LA

def norm_matrix():
    '''求向量的三种范数
    '''
    A = np.array([[3,  -4],
         
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值