numpy里生成单位矩阵?

  数学 线性代数 Python    浏览次数:37357        分享
2

numpy里怎么生成一个n x n的单位矩阵?

 

一亩三分   2018-10-18 06:13



   2个回答 
8

np.identity(n)可以生成$n\times n$的单位矩阵

>>> np.identity(4)
array([[ 1.,  0.,  0.,  0.],
       [ 0.,  1.,  0.,  0.],
       [ 0.,  0.,  1.,  0.],
       [ 0.,  0.,  0.,  1.]])

或者也可以用np.diag生成对角阵

>>> np.diag([1] * 4)
array([[1, 0, 0, 0],
       [0, 1, 0, 0],
       [0, 0, 1, 0],
       [0, 0, 0, 1]])


SofaSofa数据科学社区DS面试题库 DS面经

wxw_pku   2018-10-18 08:50

5

最省事的是numpy.eye了,比numpy.identity还少打了几个字母,哈哈

np.eye(3)
array([[1., 0., 0.],
       [0., 1., 0.],
       [0., 0., 1.]])
SofaSofa数据科学社区DS面试题库 DS面经

何立诚   2019-03-25 05:55



  相关讨论

怎么对numpy array转置?

numpy里矩阵乘法matmul,@和dot的区别?

怎么把numpy array转成scipy里的稀疏矩阵?

numpy怎么进行矩阵乘法

numpy.array从行向量转为列向量

怎么把scipy.sparse.csr.csr_matrix转成numpy array

如何查看当前numpy版本,升级numpy?

对numpy array求每行的均值

用np.round的时候报错AttributeError: no attribute 'rint'

python numpy里array和matrix的区别?

  随便看看

神经网络里为什么隐藏层越多越好?

机器学习中的奥卡姆剃刀原理是什么意思

神经网络中的dense和sparse是什么意思?

非方阵的逆是什么

PCA降维之前为什么要先标准化?