numpy.tri

numpy.tri(N, M=None, k=0, dtype=<type 'float'>)

Функция tri() возвращает треугольный массив в котором на заданной диагонали и ниже ее расположены единицы, а выше нее расположены нули.

Параметры:
N - целое число
Задает количество строк выходного массива.
M - целое число (необязательный)
Задает количество столбцов выходного массива. Если M = None (по умолчанию), то M = N
k - индекс диагонали (необязательный)
По умолчанию k = 0, что соответствует главной диагонали. Положительное значение k смещает диагональ вверх, отрицательное - вниз.
dtype - тип данных NumPy (необязательный)
Определяет тип данных выходного массива. По умолчанию float
Возвращает:
ndarray - массив NumPy
Треугольный массив T c размерами (N x M). Элементы которого на главной диагонали и под ней равны 1, а остальные равны 0. То есть T[i,j] = 1 если i <= j + k и 0 в противном случае.
Смотрите так же: eye, diag, diagflat, tril, triu

Примеры

>>> import numpy as np
>>> 
>>> np.tri(4)
array([[ 1.,  0.,  0.,  0.],
       [ 1.,  1.,  0.,  0.],
       [ 1.,  1.,  1.,  0.],
       [ 1.,  1.,  1.,  1.]])
>>> 
>>> np.tri(4, k=1)
array([[ 1.,  1.,  0.,  0.],
       [ 1.,  1.,  1.,  0.],
       [ 1.,  1.,  1.,  1.],
       [ 1.,  1.,  1.,  1.]])
>>> 
>>> np.tri(4, k=-1)
array([[ 0.,  0.,  0.,  0.],
       [ 1.,  0.,  0.,  0.],
       [ 1.,  1.,  0.,  0.],
       [ 1.,  1.,  1.,  0.]])
>>> 
>>> np.tri(4, 8)
array([[ 1.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 1.,  1.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 1.,  1.,  1.,  0.,  0.,  0.,  0.,  0.],
       [ 1.,  1.,  1.,  1.,  0.,  0.,  0.,  0.]])
>>> 
>>> np.tri(4, 8, k=3)
array([[ 1.,  1.,  1.,  1.,  0.,  0.,  0.,  0.],
       [ 1.,  1.,  1.,  1.,  1.,  0.,  0.,  0.],
       [ 1.,  1.,  1.,  1.,  1.,  1.,  0.,  0.],
       [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  0.]])
>>> 
>>> np.tri(4, 8, k=3, dtype = np.int8)
array([[1, 1, 1, 1, 0, 0, 0, 0],
       [1, 1, 1, 1, 1, 0, 0, 0],
       [1, 1, 1, 1, 1, 1, 0, 0],
       [1, 1, 1, 1, 1, 1, 1, 0]], dtype=int8)