numpy.bmat

numpy.bmat(object, ldict=None, gdict=None)

Функция bmat() создает матрицу из массивов-подблоков.

Параметры:
object - строка или подобный массиву объект
Входные данные с перечислением необходимого порядка массивов-подблоков.
ldict - словарь (необязательный)
Словарь, который заменяет локальные операнды в текущей строке. Игнорируется, если obj не является строкой или gdict=None.
gdict - словарь (необязательный)
Словарь, который заменяет глобальные операнды в текущей строке. Игнорируется, если obj не является строкой.
Возвращает:
matrix - матрица NumPy
Интерпретация входных данных как матрицы.
Смотрите так же: mat

Примеры

>>> import numpy as np
>>> a = [1, 1]
>>> b = [2, 2]
>>> np.bmat([[a], [b]])
matrix([[1, 1, 2, 2]])
>>>
>>> np.bmat([[[a], [b]], [[a], [b]]])
matrix([[1, 1, 2, 2],
        [1, 1, 2, 2]])
>>> 
>>> 
>>> a = np.arange(0, 4).reshape(2, 2)
>>> a
array([[0, 1],
       [2, 3]])
>>> b = np.arange(4, 8).reshape(2, 2)
>>> b
array([[4, 5],
       [6, 7]])
>>> c = np.arange(8, 12).reshape(2, 2)
>>> c
array([[ 8,  9],
       [10, 11]])
>>> d = np.arange(12, 16).reshape(2, 2)
>>> d
array([[12, 13],
       [14, 15]])
>>> 
>>> np.bmat([[a, b],[c, d]])
matrix([[ 0,  1,  4,  5],
        [ 2,  3,  6,  7],
        [ 8,  9, 12, 13],
        [10, 11, 14, 15]])
>>> 
>>> np.bmat('a b; c d')
matrix([[ 0,  1,  4,  5],
        [ 2,  3,  6,  7],
        [ 8,  9, 12, 13],
        [10, 11, 14, 15]])
>>> 
>>> np.bmat([a, b, c, d])
matrix([[ 0,  1,  4,  5,  8,  9, 12, 13],
        [ 2,  3,  6,  7, 10, 11, 14, 15]])
>>>
>>> np.bmat('a b c d')
matrix([[ 0,  1,  4,  5,  8,  9, 12, 13],
        [ 2,  3,  6,  7, 10, 11, 14, 15]])
>>> 
>>> np.bmat([[a], [b], [c], [d]])
matrix([[ 0,  1],
        [ 2,  3],
        [ 4,  5],
        [ 6,  7],
        [ 8,  9],
        [10, 11],
        [12, 13],
        [14, 15]])
>>>
>>> np.bmat('a; b; c; d')
matrix([[ 0,  1],
        [ 2,  3],
        [ 4,  5],
        [ 6,  7],
        [ 8,  9],
        [10, 11],
        [12, 13],
        [14, 15]])
>>>
>>>
>>> np.bmat('a b c d',
            ldict = {'a':a, 'b':b, 'c':c,'d':d},
            gdict = {'a':a, 'b':b, 'c':c, 'd':d})
matrix([[ 0,  1,  4,  5,  8,  9, 12, 13],
        [ 2,  3,  6,  7, 10, 11, 14, 15]])
>>>
>>> np.bmat('a b c d', 
            ldict = {'a':a, 'b':a, 'c':a, 'd':a}, 
            gdict = {'a':a, 'b':a, 'c':a, 'd':a})
matrix([[0, 1, 0, 1, 0, 1, 0, 1],
        [2, 3, 2, 3, 2, 3, 2, 3]])
>>>
>>> r = np.zeros((2, 2), dtype = int)
>>> r
array([[0, 0],
       [0, 0]])
>>>
>>> np.bmat('a b c d', ldict = {'a':r, 'b':a, 'c':r, 'd':a}
                       gdict = {'a':r, 'b':a, 'c':r, 'd':a})
matrix([[0, 0, 0, 1, 0, 0, 0, 1],
        [0, 0, 2, 3, 0, 0, 2, 3]])