我知道我的代码是错误的,因为np.sum(abs(X),axis = 1))也会将对角线值相加,因此我的代码将始终返回'NOT diagonally dominant ”。我曾尝试把'-np.diag(X)',但我得到一个错误消息。先谢谢你!检查矩阵在Python中是否对角占优
import numpy as np
A=np.array([[ 40., 7., 5.],
[ 5., 90., 7.],
[20., 7., 50.]])
def dd(X):
Sum_values_in_given_row = np.sum(abs(X),axis=1)
if np.all(((abs(np.diag(X)))) >= np.sum(abs(X),axis=1)):
print 'matrix is diagonally dominant'
else:
print 'NOT diagonally dominant'
return
dd(A)
谢谢!这非常有帮助! :) – Kate
不客气!很高兴我能帮上忙。 – rayryeng