创建一个数组,可为方阵和非方阵,
该数组 特定对角线 及 对角线下 值为 1,其他为 0
用法
np.tri(R, C=None, k=0, dtpye='float')
主对角线:把非方阵扩充成方阵后,方阵的对角线
R: 数组行数
C: 数组列数,默认等于 R
k: k=0 代表特定对角线为主对角线,k>0 代表特定对角线高于主对角线,k<0 代表 特定对角线低于主对角线
示例
### 方阵 print("tri与主对角线 : ", np.tri(3, 3, 0), " ") # [[1. 0. 0.] # [1. 1. 0.] # [1. 1. 1.]] print("tri与主对角线 及 上 : ", np.tri(3, 3, 1), " ") # [[1. 1. 0.] # [1. 1. 1.] # [1. 1. 1.]] print("tri与主对角线 及 下: ", np.tri(3, 3, -1), " ") # [[0. 0. 0.] # [1. 0. 0.] # [1. 1. 0.]] ### 非方阵 print("tri与主对角线 : ", np.tri(3, 5, 0), " ") # [[1. 0. 0. 0. 0.] # [1. 1. 0. 0. 0.] # [1. 1. 1. 0. 0.]] print("tri with k = 1 : ", np.tri(3, 5, 1, dtype=float), " ") # [[1. 1. 0. 0. 0.] # [1. 1. 1. 0. 0.] # [1. 1. 1. 1. 0.]] print("tri with k = -1 : ", np.tri(3, 5, -1), " ") # [[0. 0. 0. 0. 0.] # [1. 0. 0. 0. 0.] # [1. 1. 0. 0. 0.]]
参考资料:
https://www.imangodoc.com/3462.html