[Python]实现求范数

示范语句:np.linalg.norm(x, ord = None, axis = None, keepdims = False)

参数说明如下:

x:表示矩阵(一维表示向量)
ord:表示范数(ord = 1 :表示求列和的最大值,即1-范数;ord = 2:表示先求矩阵的特征值,再求最大特征值的算数平方根,即2-范数;ord = np. inf:表示求行和的最大值,即∞-范数;ord = ‘fro’:表示求解矩阵的F-范数)

axis:处理类型(axis=1:表示按行向量处理,求多个行向量的范数;axis=0:表示按列向量处理,求多个列向量的范数;axis = None:表示矩阵范数)

keepims:是否保持矩阵的二维特性(True:保持;False:相反)

实例1:

import numpy as np
a = [1, 4, 5, 8, -2]
print('向量a:', a)
print('向量a的1-范数',a)
print(np.linalg.norm(a, ord = 1))
print('向量a的2-范数:')
print(np.linalg.norm(a, ord = 2))
print('向量a的∞-范数:')
print(np.linalg.norm(a, ord = np.inf))

[Python]实现求范数_第1张图片

实例2:

import numpy as np
A = np.arange(3, 15).reshape(3, 4)   #构造三行四列矩阵
print('向量A:', A)
print('向量A的1-范数', A)
print(np.linalg.norm(A, ord = 1))
print('向量A的2-范数:')
print(np.linalg.norm(A, ord = 2))
print('向量A的∞-范数:')
print(np.linalg.norm(A, ord = np.inf))
print('向量A的F-范数:')
print(np.linalg.norm(A, ord = 'fro'))
print('向量A的列向量2-范数:')
print(np.linalg.norm(A, ord = 2, axis = 0))
print('向量A的行向量2-范数:')
print(np.linalg.norm(A, ord = 2, axis = 1))

[Python]实现求范数_第2张图片 

你可能感兴趣的:(机器学习-数学基础,python,numpy)