更新时间:2023-01-23 09:36:29
您可以使用诊断方法:
import numpy as np
a = np.array([1,2,3,4])
d = np.diag(a)
# or simpler: d = np.diag([1,2,3,4])
print(d)
结果:
[[1 0 0 0]
[0 2 0 0]
[0 0 3 0]
[0 0 0 4]]
如果您有行向量,则可以执行以下操作:
If you have a row vector, you can do this:
a = np.array([[1, 2, 3, 4]])
d = np.diag(a[0])
结果:
[[1 0 0 0]
[0 2 0 0]
[0 0 3 0]
[0 0 0 4]]
对于问题中的给定矩阵:
For the given matrix in the question:
import numpy as np
a = np.matrix([1,2,3,4])
d = np.diag(a.A1)
print (d)
结果再次是:
[[1 0 0 0]
[0 2 0 0]
[0 0 3 0]
[0 0 0 4]]